我正在尝试使用Bash Shell脚本解析一组CSV文件,文件如下所示:
File1: /tmp/test.txt
key1,key1file.txt
key2,key2file.txt
key3,key3file.txt
Files: /tmp/inter/key1file.txt
abc,cdf,123,456
Files: /tmp/inter/key2file.txt
abc,cdf,123,456
Files: /tmp/inter/key3file.txt
abc,cdf,123,456
我曾试过使用2个while循环解析这些文件:
while IFS="," read keycol keyfile
do
while IFS="," read keyval
do
echo "inside inner while loop"
echo "$keycol|$keyval"
done < "/tmp/inter/$keyfile"
done < /tmp/test.txt
期望这段代码输出什么。
key1,abc
key1,cdf
key1,123
key1,456 and so on...
然而,当我运行这段代码时没有任何输出,这表明第二个循环没有被执行。任何指向正确方向的提示都会有所帮助。谢谢。
/tmp/test.txt
,在另一个地方有/tmp/test.csv
。就是这样吗? - John Kugelmanread
函数无法解析 CSV 文件;它不能处理那些被转义为字段一部分而不是分隔两个字段的逗号。使用一种具有适当的 CSV 解析器的编程语言。 - chepner