
前几天写脚本,用 read 处理管线的上下文,遇到一个挺令我意外的 BUG。
我现在写了一个能体现问题所在的脚本。脚本和运行結果如下:
代码: 全选
$ cat shtest.sh
#! /bin/bash
while read abc; do
printf "%s, %s\n" $abc $abc
done <<- EOF
abc def ghi
jkl mno pqr
EOF
$ ./shtest.sh
abc, def
ghi, abc
def, ghi
jkl, mno
pqr, jkl
mno, pqr
$
代码: 全选
abc def ghi, abc def ghi
jkl mno pqr, jkl mno pqr