免交互
- 使用I/O重定向的方式将命令列表提供给交互式程序或命令,比如ftp,cat,read。
- 是标准输入的一种替代品可以帮助脚本开发人员不必使用临时文件来构建输入信息,而是直接的产生一个“文件”并用作“命令”的标准输入。Here Document 也可以与非交互式程序和命令一起使用。
- 格式:
- 注意事项:
- 标记可以使用任意合法字符(通常为EOF)
- 结尾的标记一定要顶格写,前面不能有任何字符
- 结尾的标记后面也不能有任何字符,包括空格
- 开头标记前后的空格会被省略
示例
直接将内容传给wc -l 统计行数
通过read命令接收输入并打印,输入值是作为变量i的值
免交互passwd给用户设置密码
支持变量替换,在写入文件时会先将变量替换成实际值,再结合cat命令完成写入
整体赋值给变量,然后通过echo命令将变量值打印出来
在标记前加“-”,可抑制各行首TAB
多行注释
- bash的默认注释是使用“#”,该注释方法只支持单行注释,here document能解决对行注释的问题
- “:”代表什么都不做的空命令。中间标记区域的内容不会被执行,会被bash忽略掉,因此可达到批量注释的效果