EOF的介绍
Shell中通常将EOF与 << 结合使用,表示后续的输入作为子命令或子Shell的输入,直到遇到EOF为止,再返回到主调Shell。
示例
<<EOF //开始
....
EOF //结束
也可以把EOF替换成其他东西,只要是相同的字符串可以
<<ABC //开始
....
ABC //结束
使用方法
(1)连续输入字符串到文件
[root@www ~]# cat << EOF >> test.text
> test 1234
> 5678
> EOF
[root@www ~]# cat cql03.text
test 1234
5678
(2)shell 脚本中使用,解决shell中交互模式下输入的问题
复制代码
#!/bin/bash
passwd='123456'
/usr/bin/expect <<-EOF
set time 30
spawn ssh saneri@192.168.56.103 df -Th
expect {
"*yes/no" { send "yes\r"; exp_continue }
"*password:" { send "$passwd\r" }
}
expect eof
EOF
(3)
用来注释整段脚本代码。
#!/bin/bash
echo "hello world"
:<<EOF
echo "123"
echo "456"
echo "789"
EOF
echo "bye"
[root@www ~]# sh cql01.sh
hello world
bye
这段脚本执行时,中间红色部分不会被执行: