我在bash中使用while循环来逐行读取文件。我已经这么做了多年,但现在遇到了一个奇怪的问题。
这是我的代码
while read -r i
do
echo $i
done < input.dat
我的输入文件包含2行'|'作为分隔符
Cars|bikes|This is a test
Oranges|Apples|Another test
对于第一次迭代,打印的字符串为:
Cars|bikes|This is a test
但是对于第二次迭代,打印的字符串是:
Oranges Apples Another test
注意如何用所有迭代的空格替换管道,但是第一个?
我似乎无法弄清楚原因?