cat命令和EOF标识输出多行文件
时间:2014-06-23 01:38 来源:linux.it.net.cn 作者:IT网
在某些场合,可能需要在脚本中生成一个临时文件,然后把该文件作为最终文件放入目录中。(可参考ntop.spec文件)这样有几个好处,其中之一就是临时文件不是唯一的,可以通过变量赋值,也可根据不同的判断生成不同的最终文件等等。
一、cat和EOF
cat命令是linux下的一个文本输出命令,通常是用于观看某个文件的内容的;
EOF是“end of file”,表示文本结束符。
结合这两个标识,即可避免使用多行echo命令的方式,并实现多行输出的结果。
二、使用
看例子是最快的熟悉方法:
# cat << EOF > test.sh
> #!/bin/bash
> #you Shell script writes here.
> EOF
结果:
# cat test.sh
#!/bin/bash
#you Shell script writes here.
可以看到,test.sh的内容就是cat生成的内容。
三、其他写法
1、追加文件
# cat << EOF >> test.sh
2、换一种写法
# cat > test.sh << EOF
3、 EOF只是标识,不是固定的
# cat << HHH > iii.txt
> sdlkfjksl
> sdkjflk
> asdlfj
> HHH
这里的“HHH”就代替了“EOF”的功能。结果是相同的。
# cat iii.txt
sdlkfjksl
sdkjflk
asdlfj
4、非脚本中
如果不是在脚本中,我们可以用Ctrl-D输出EOF的标识
# cat > iii.txt
skldjfklj
sdkfjkl
kljkljklj
kljlk
Ctrl-D
结果:
# cat iii.txt
skldjfklj
sdkfjkl
kljkljklj
kljlk
ADD ME
在脚本中可以用cat>.tmp
(责任编辑:IT)
在某些场合,可能需要在脚本中生成一个临时文件,然后把该文件作为最终文件放入目录中。(可参考ntop.spec文件)这样有几个好处,其中之一就是临时文件不是唯一的,可以通过变量赋值,也可根据不同的判断生成不同的最终文件等等。 一、cat和EOF cat命令是linux下的一个文本输出命令,通常是用于观看某个文件的内容的; EOF是“end of file”,表示文本结束符。 结合这两个标识,即可避免使用多行echo命令的方式,并实现多行输出的结果。 二、使用 看例子是最快的熟悉方法: # cat << EOF > test.sh > #!/bin/bash > #you Shell script writes here. > EOF 结果: # cat test.sh #!/bin/bash #you Shell script writes here. 可以看到,test.sh的内容就是cat生成的内容。 三、其他写法 1、追加文件 # cat << EOF >> test.sh 2、换一种写法 # cat > test.sh << EOF 3、 EOF只是标识,不是固定的 # cat << HHH > iii.txt > sdlkfjksl > sdkjflk > asdlfj > HHH 这里的“HHH”就代替了“EOF”的功能。结果是相同的。 # cat iii.txt sdlkfjksl sdkjflk asdlfj 4、非脚本中 如果不是在脚本中,我们可以用Ctrl-D输出EOF的标识 # cat > iii.txt skldjfklj sdkfjkl kljkljklj kljlk Ctrl-D 结果: # cat iii.txt skldjfklj sdkfjkl kljkljklj kljlk ADD ME 在脚本中可以用cat>.tmp (责任编辑:IT) |