Here Document 是在Linux Shell 中的一种特殊的重定向方式,它的基本的形式如下

它的作用就是将两个 delimiter 之间的内容(Here Document Content 部分) 传递给cmd 作为输入参数。fish@mangos:~$ cat  First Line  > Second Line  > Third Line EOF  > EOF  First Line  Second Line  Third Line EOF

这里要注意几点

  • EOF 只是一个标识而已,可以替换成任意的合法字符

  • 作为结尾的delimiter一定要顶格写,前面不能有任何字符

  • 作为结尾的delimiter后面也不能有任何的字符(包括空格)

  • 作为起始的delimiter前后的空格会被省略掉

  • Here Document 不仅可以在终端上使用,在shell 文件中也可以使用,例如下面的here.sh 文件

使用 sh here.sh 运行这个脚本文件,会得到output.sh 这个新文件,里面的内容如下