我有一个用逗号分隔值的文本文件。Field1具有需要匹配的字段,但是字段2需要根据匹配进行替换。
例子:
A,C,
B,C
结果:
A,D,
B,C
我猜命令看起来或多或少像:
sed 's/A/D/'
谢谢
这个怎么样
$ echo A,fgfdgd|sed -r 's/A,[^,]*/A,D/'
A,D
如果第一列是A,然后有一个逗号,而第二列中有什么,它将用A,D代替批次。仅当它与第一列中的A相匹配(后跟逗号和第二列中的任何内容)时,才会发生这种情况。
一个带有文件的例子
这将您的示例变成您的结果。因此,第一列为A,第二列为D。
$ cat a.b
A,C
B,C
$ sed -r 's/A,[^,]*/A,D/' a.b
A,D
B,C
$
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句