根据其他列值更改列

时间:2017-10-31 08:21:00

标签: bash awk sed text-processing

我有一个包含数百条此类记录的文件

cat testfile.txt | sed -n -r 's/^[0-9]*,[0-9]*,0/000/p'

如果第三列的值 0 000 替换第四列的值>

我研究了很多,找不到解决方案。到目前为止我得到了这个

pom.xml

但它取代了第一部分

1 个答案:

答案 0 :(得分:2)

使用awk:

awk 'BEGIN{FS=OFS=","} $3=="0" {$4="000"}1' file
  

FS:输入字段分隔符

     

OFS:输出字段分隔符

输出:

100,502030,0,000,RSVYU,10
101,501412,1,555,DDGTH,11
102,502269,0,000,DDERF,60
103,508877,2,111,SDEFV,23