谁能解释何时以及如何使用 << 运算符进行输入重定向?我用谷歌搜索了足够多但找不到。
答案1
重定向<<
运算符引入了“此处文档”:输入到标准输入中的文本紧随重定向之后出现。
这是一个例子:
grep Hello <<EOF
This line won't appear
Hello this one will
Hello again
EOF
<<EOF
和之间的所有文本都EOF
被输入到grep
。EOF
这里并不特殊,shell 接受后面给出的单词<<
并将其用作分隔符。
一个有趣的变体是<<-
剥离前导标签。
请参阅bash
文档了解详情。
答案2
该运算符用于多行重定向。参见下面的例子
program <<KEYWORD
line1
line2
line3
KEYWORD
上面发送 line1、line2、line3 字符串,以换行符分隔
文本中不应包含关键字(可以是任何其他单词)。最后一行 KEYWORD 应该从 begin 开始,没有空格,没有制表符等