这是我的代码:
while IFS=',' read a b c; do
read input
echo $input
done 3<&0 < input.csv > output.txt
我通过管道重定向来处理输入重定向。但是,当我运行上面的代码时,控制不会停止输入。
为什么?
答案1
这是因为您的输入流正在同时提供两者read
。你几乎是对的,所以也许这是一个错字(你只是忘记将正确的 FD 赋予你的第二个read
):
while IFS=',' read a b c; do
read input <&3
echo $input
done 3<&0 < input.csv >> output.txt