![두 개의 다른 분리기 사이에 분리기를 교체하는 방법은 무엇입니까?](https://linux55.com/image/10233/%EB%91%90%20%EA%B0%9C%EC%9D%98%20%EB%8B%A4%EB%A5%B8%20%EB%B6%84%EB%A6%AC%EA%B8%B0%20%EC%82%AC%EC%9D%B4%EC%97%90%20%EB%B6%84%EB%A6%AC%EA%B8%B0%EB%A5%BC%20%EA%B5%90%EC%B2%B4%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
아래와 같은 문자열이 있습니다.
engineer,doctor,"987,345,123",engineer
Unix에서 다음과 같이 변경하고 싶습니다.
engineer,doctor,"987345123",engineer
답변1
gsub()
다음 을 사용하여 입력에서 각 CSV 레코드의 세 번째 필드에 있는 모든 쉼표를 제거합니다.밀러. 입력 데이터 세트에 헤더가 없다고 가정합니다.
$ mlr --csv -N put '$3 = gsub($3, ",", "")' file
engineer,doctor,987345123,engineer
더 이상 필요하지 않은 경우에도 원본 인용을 보존하십시오.
$ mlr --csv -N --quote-original put '$3 = gsub($3, ",", "")' file
engineer,doctor,"987345123",engineer