在某些場合,可能咱們須要在腳本中生成一個臨時文件,而後把該文件做爲最終文件放入目錄中。(可參考ntop.spec文件)這樣有幾個好處,其中之一就是臨時文件不是惟一的,能夠經過變量賦值,也可根據不一樣的判斷生成不一樣的最終文件等等。
1、cat和EOF
cat命令是linux下的一個文本輸出命令,一般是用於觀看某個文件的內容的;
EOF是「end of file」,表示文本結束符。
結合這兩個標識,便可避免使用多行echo命令的方式,並實現多行輸出的結果。
2、使用
看例子是最快的熟悉方法:linux
# cat << EOF > test.sh
> #!/bin/bash
> #you Shell script writes here.
> EOFbash
結果:ip
引用it
# cat test.sh
#!/bin/bash
#you Shell script writes here.test
能夠看到,test.sh的內容就是cat生成的內容。
3、其餘寫法
一、追加文件變量
# cat << EOF >> test.shfile
二、換一種寫法sdk
# cat > test.sh << EOF引用
三、EOF只是標識,不是固定的方法
# cat << HHH > iii.txt
> sdlkfjksl
> sdkjflk
> asdlfj
> HHH
這裏的「HHH」就代替了「EOF」的功能。結果是相同的。
引用
# cat iii.txt
sdlkfjksl
sdkjflk
asdlfj
四、非腳本中
若是不是在腳本中,咱們能夠用Ctrl-D輸出EOF的標識
# cat > iii.txt
skldjfklj
sdkfjkl
kljkljklj
kljlk
Ctrl-D
結果:
引用
# cat iii.txt
skldjfklj
sdkfjkl
kljkljklj
kljlk
※關於「>」、「>>」、「<」、「<<」等的意思,請自行查看bash的介紹