我有现有的csv文件。我想修改csv文件并在文件的第一列中包含文件名。如何在现有csv文件的第一列中包含文件名
Example
file.csv
1,love,anger
Modified csv
file.csv
file.csv,1,love,anger
,我们可以做它用一个垫片,AWK或UNIX
感谢很多提前
我有现有的csv文件。我想修改csv文件并在文件的第一列中包含文件名。如何在现有csv文件的第一列中包含文件名
Example
file.csv
1,love,anger
Modified csv
file.csv
file.csv,1,love,anger
,我们可以做它用一个垫片,AWK或UNIX
感谢很多提前
这只是简单:awk '{if($0) printf("%s,%s\n", FILENAME, $0); else print FILENAME;}' file.csv
其中FILE.CSV输入文件名。
UPD:我修改命令附加条件与空行
另一个
$ awk '{print FILENAME (NF?",":"") $0}' file
不错,比我的变种更短。你甚至可以删除'-F,' –
是的,不需要字段分隔符,删除。 – karakfa
是的,它可以正确处理。请参阅Arnold Robbins的第4版Effective Awk Programming,了解如何解决此问题以及其他许多文本处理问题。在您阅读并尝试解决问题后,请告诉我们您是否有任何问题。 –