我正在尝试遍历文件中的每一行,用逗号分隔并用它做一些事情。重要的是,我希望将更改写入同一文件。此代码不会出错,但会挂起并且不执行任何操作。有什么建议或更好的解决方案吗?
file='file.txt'
while IFS=',' read -ra f1 f2
do
echo "field # 1 : $f1 ==> field #2 : $f2"
done >> $file
答案 0 :(得分:5)
因为你的命令很简单。你甚至不是在阅读文件。要在完成后阅读文件,您需要< file
。
file='file.txt'
while IFS=',' read -r f1 f2
do
echo "field # 1 : $f1 ==> field #2 : $f2"
done < "$file" > output