【问题标题】:Updating n-th column in csv using awk [duplicate]使用awk更新csv中的第n列[重复]
【发布时间】:2015-12-14 09:22:35
【问题描述】:

输入文件

1,2,3,4,5,6,7,8,9,10
11,22,33,44,55,66,77,88,99,100
111,222,333,444,555,666,777,888,999,1000


预期输出

1,2,3,4,5,6,7,8MNINS,9,10
11,22,33,44,55,66,77,88MNINS,99,100
111,222,333,444,555,666,777,888MNINS,999,1000


我尝试了以下命令

awk -F "," '{$8=$8"MNINS"}1' 1.csv > 2.csv

输出:

1 2 3 4 5 6 7 8MNINS 9 10
11 22 33 44 55 66 77 88MNINS 99 100
111 222 333 444 555 666 777 888MNINS 999 1000


去掉了所有的逗号,所以我的 csv 文件变成了空格分隔的文件。

请帮忙

【问题讨论】:

    标签: bash shell csv awk


    【解决方案1】:

    您需要指定逗号作为输出字段分隔值。

    awk -F "," -v OFS="," '{$8=$8"MNINS"}1' 1.csv > 2.csv
    

    【讨论】:

    猜你喜欢
    • 2018-04-11
    • 1970-01-01
    • 2021-12-24
    • 2023-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-02
    • 2017-04-23
    相关资源
    最近更新 更多