我有一个大的.csv文件,用逗号“,”分隔。该文件无法打开,因为它是如此之大,所以为了刮取我需要的数据,我在终端中使用以下Grep命令:
grep "A1" file.csv | grep "B1" | grep "C1" | grep "D1" >> grep.txt
awk -F"," '{print $11}' grep.txt
我想做的是把它放在一个脚本中,并将每个grep索引的每组输出值输出到一个新CSV文件的特定列中。但是,我不确定如何做到这一点。请建议如何开始
原始数据示例:
row1 -> A1,B1,C1,D1,E1,F1,G1,Value1,Value2,Value3,Value4,Value5
row2 -> A2,B2,C2,D2,E2,F2,G2,Value1,Value2,Value3,Value4,Value5
..
..
rowN -> ""
我想在输出CSV文件中有这样的内容:
Column1:
row1->Value3
row2->Value3
...
Column2:
row2->value4
row2->Value4
...
and so forth
1条答案
按热度按时间velaa5lx1#
这可能不是100%的你想要的,但它应该会引导你朝着正确的方向前进。基本上,在for循环中运行你的grep值,使用grep -n获得行号,将$i变量带到awk命令中,并将每个grepped值打印到单独的临时文件中。然后使用paste将它们合并到1个csv文件中。
或者,如果你想使用一个数组,这样你只需要在一个地方提到/维护grep单词列表,那么你可以这样做: