在某些場合,可能我們需要在指令碼中生成乙個臨時檔案,然後把該檔案作為最終檔案放入目錄中。(可參考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
※關於「>」、「>>」、「<」、「<<」等的意思,請自行檢視bash的介紹。
cat命令和EOF標識輸出shell到檔案
在某些場合,可能我們需要在指令碼中生成乙個臨時檔案,然後把該檔案作為最終檔案放入目錄中。可參考ntop.spec檔案 這樣有幾個好處,其中之一就是臨時檔案不是唯一的,可以通過變數賦值,也可根據不同的判斷生成不同的最終檔案等等。一 cat和eof cat命令是linux下的乙個文字輸出命令,通常是用於...
使用cat命令和EOF標識輸出多行檔案 不指定
原 使用cat命令和eof標識輸出多行檔案 在某些場合,可能我們需要在指令碼中生成乙個臨時檔案,然後把該檔案作為最終檔案放入目錄中。可參考ntop.spec檔案 這樣有幾個好處,其中之一就是臨時檔案不是唯一的,可以通過變數賦值,也可根據不同的判斷生成不同的最終檔案等等。一 cat和eof cat命令...
cat 與 EOF 的使用
cat 和 eof 在shell中常常被組合使用來將多行的內容寫入到乙個檔案中,但是在使用該命令的時候存在寄出坑 shell 指令碼 usr bin env bash 該行的 表示追加的意思,如果再將該指令碼執行一次,則生成的檔案中的內容會以追加的方式寫入,如果改為 則執行多次的效果是一致的 cat...