如何使用unix命令编辑csv文件中的特定列?

时间:2013-06-22 10:35:49

标签: unix csv

我想编写一个脚本,每天将新列添加到csv表。

该脚本将每天运行并附加到csv文件。现在如何编辑csv文件?编辑将通过awk或sed命令。我将使用此csv文件向用户发送邮件,它将用于excelsheets。

我没有从我遇到的所有问题中找到任何相关答案,所以请尝试回答。

2 个答案:

答案 0 :(得分:1)

您可以尝试使用awk

awk 'BEGIN{FS=OFS=","}{$NF=$NF",new_stuff"}1' csv

$ cat csv 
1,shoes,red
2,apple,black
3,fog,blue
4,elephant,gray
5,monkey,green

$ awk 'BEGIN{FS=OFS=","}{$NF=$NF",new_stuff"}1' csv 
1,shoes,red,new_stuff
2,apple,black,new_stuff
3,fog,blue,new_stuff
4,elephant,gray,new_stuff
5,monkey,green,new_stuff

答案 1 :(得分:0)

所以你想要这样的东西:

sed 's/\(john mayers.*\)$/\1\,hallo/' file

文件:

john mayers ,hi   ,hello
jack bauer  ,yo   ,wasup

输出:

john mayers ,hi   ,hello,hallo
jack bauer  ,yo   ,wasup