我有一个逗号分隔符的源文件,我想将其更改为管道分隔符

时间:2017-05-20 21:15:47

标签: unix

我们使用逗号获取列中的一些值,因此当我们尝试转换为管道分隔符时,值也会转换为管道,这不应该发生。

例如:

tf.train.string_input_producer

必需输出

Name,claimid
Sandeep,kumar,12
mohan,reddy,13

我尝试过使用sed命令,但Name列中的值也会更改为管道分隔符。可以请任何人帮忙

Name,Claimid
Sandeep,kumar|12
mohan,red|13

1 个答案:

答案 0 :(得分:0)

如果您确定要替换第二个,,可以使用

echo "Name,claimid
Sandeep,kumar,12
mohan,reddy,13" | sed 's/,/|/2'

如果您确定要使用数字更改最后一个字段前的,,可以使用

echo "Name,claimid
Sandeep,kumar,12
mohan,reddy,13" | sed 's/,\([0-9]\+\)$/|\1/'