#EOF只是一個分界符,當然也可以用abcde等等替換
當shell遇到<<時,它知道下一個詞是一個分界符。在該分界符以后的內容都被當作輸入,直到shell又看到該分解符(位於單獨一行)
此分界符可以是所定義的任何字符串,其實,不一定要用EOF,只要是‘內容段’中沒有出現的字符串,都可以用來替代EOF,完全可以換成abcd之類的字符串,只是一個開始和結束的標志而已
常用<1>
[root@www ~]# cat << EOF >> cql03.text > strace iostat vmstat sar > top uptime > EOF [root@www ~]# cat cql03.text strace iostat vmstat sar top uptime
常用<2>
#!/bin/bash #EOF用法<2> #解決shell中交互模式下輸入的問題,以建立yum本地倉庫配置文件為例 cat << EOF >> /etc/yum.repos.d/aa.repo [base] name=1 baseurl=file:///mnt gpgcheck=0 EOF
特殊用法
用來注釋整段腳本代碼。 #!/bin/bash echo "明天你好" :<<EOF echo "床前明月光" echo "hello word" EOF echo "byebye!" [root@www ~]# sh cql01.sh 明天你好 byebye! 這段腳本執行時,中間紅色部分不會被執行: