CSV 파일에서 N번째 구분 기호를 바꾸는 방법은 무엇입니까?

CSV 파일에서 N번째 구분 기호를 바꾸는 방법은 무엇입니까?

다음과 같은 예로 쉼표로 구분된 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

그 뒤의 네 번째 쉼표를 파이프라인으로 바꾸면 됩니다 .,Dear user|

답변1

를 사용하면 교체하려는 패턴의 발생 항목을 sed정확히 알 수 있으므로 다음과 같습니다.sed

sed 's/,/|/4' infile

또는 다른 솔루션을 사용하는 것은 다음과 같습니다.

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

관련 정보