我正在学习bash,但我无法理解这个示例代码:
while IFS= read -r line2; do if [[ "$line1" == "$line2" ]] then (( i++ )) fi done <<< "$lines"
特别是行done <<< "$lines"
什么意思<<<
?
我找到了其他例子,例如:
while read line do echo "Word count per line: $line" done < <(cat list.txt | wc -w)
在这种情况下因为它使用< <
而不是<<<
<<<
指定一个here字符串.
在您的情况下,内容$lines
被发送到while
循环的标准输入.
<(...)
是一种过程替代.
在您的情况下,输出cat list.txt | wc -w
被发送到while
循环的标准输入.
当程序期望文件名作为参数时,进程替换非常有用.