Text-Processing

如何替換 csv 文件中的第 N 個分隔符?

  • November 10, 2017

我有一個逗號分隔的 csv 文件作為範例,例如:

1,92345,92345,Dear user, this is your amount , 2016-10-10 
2,92345,92345,Dear user, this is your amount , 2016-10-09

我只需要用管道替換第4個逗號。,``Dear user``|

使用sed,您可以明確告訴sed您只想替換哪些出現的模式,因此:

sed 's/,/|/4' infile

或者使用不同的解決方案是:

sed -r 's/^([^,]*,)([^,]*,)([^,]*,)([^,]*),(.*)/\1\2\3\4|\5/' infile

引用自:https://unix.stackexchange.com/questions/403273