我正在尝试使用linux从众多csv文件中选择某些数据,制作一个新文件,其中只包含我需要处理的数据。
我已经开始使用grep和awk命令从文件中选择我需要的行和列。
然后我希望添加一个列,它将文件名作为所有行的条目。
最后,我想对文件夹中的多个文件重复此操作,并将结果附加到一个文件中。有没有办法做到这一点?
提前感谢您的帮助。
答案 0 :(得分:1)
也许这会有所帮助?
grep为您提供找到模式的每个文件的文件名。
您可以将输出传输到sed并将每个文件名后的':'翻译为',',如下所示:
grep FS *.awk | sed 's/:/,/'
empty.awk,BEGIN { FS = "\t" }
join.awk, OFS = sep = "\t"
merge.awk,awk ' BEGIN { FS = "\t" }
p11.awk,BEGIN { FS = "\t" # make tab the field separator
p42.awk,BEGIN { FS = OFS = "\t" }
p43.awk,BEGIN { FS = OFS = "\t" }
p48.awk,BEGIN { FS = "\t" }
p52.awk,BEGIN { OFS = ":"; ORS = "\n\n" }
p54.awk,BEGIN { FS = "\t" }
smith.awk,BEGIN { RS = ""; FS = "\n" }