介绍一个不太常见的概念:嵌入文档

描述

今天,阿铭介绍一个不太常见的概念: 

嵌入文档

英文名叫做Here Documents。

也就是你在shell脚本中见过的

cat <

先来上一段shell代码:

#!/bin/bash

cat > 1.txt <

Hello

My

name

is aming.

This's a test text.

EOF

运行这个脚本后,会产生1.txt文档,内容为:

Hello

My

name

is aming.

This's a test text.

这个用法就是Here Documents。

这里的"EOF"叫做标识符,还可以换成其他字符串,比如写成ABC、123等等,随便你定义成啥,但要保证前后对应,也不要造成和其他字符串混淆。

通常大家习惯写EOF,这样也容易让别人识别。就跟“shell脚本名字要以.sh结尾”同样的道理。

Here Documents需要注意一点,最后面那个标识符(EOF)

必须要顶格写

当然,不一定非得cat <

wc -l <

1

2

3

EOF

关于Here Documents的作用,不用太多介绍。

这里我只讲一个典型的用法:在shell脚本中需要调用expect脚本,那么expect脚本需要事先写好,而且是额外的一个文件。

此时,可以使用Here Documents,把expect脚本内容写入到指定文件里,之后再调用它。

这样做的好处是,一个shell脚本搞定,不需要额外再编写expect脚本,方便管理。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分