2011-12-15 3 views
3

안녕하세요, CSV에서 쉼표 앞에 공백을 제거하기 위해 awk 또는 sed를 사용하고 싶습니다. 입력 파일이 될 것 예 : "ABCD", "시험 123"유닉스에서 csv의 빈 공간을 제거하는 방법

출력 파일 : "ABCD", "시험 123"

만 쉼표 앞에 공백을 제거하지만 단어 사이. 유닉스에서 트림 기능을 찾고있다. 도와주세요. 고맙습니다.

답변

6

이 쉽게 나오지도 수행 할 수 있습니다 :이 쉼표 전에 (임의의 길이의) 공백 문자의 시퀀스를 제거 나오지도 알려줍니다

sed 's/ *,/,/' csv-file

.

주 :

  1. 여기서의 가정은 쉼표 (즉 "테스트, 123"불법) 필드 내에서 불법이다.
  2. 요청한대로 쉼표 만 앞에 공백이 제거됩니다.

    sed 's/ *, */,/' csv-file

+0

여러분 께 감사드립니다! – JCX

+0

sed의/*, /,/'csv-file은 파일의 공백의 첫 번째 인스턴스 만 바꿉니다.모든 인스턴스를 대체하기위한 sed의/*, /,/g'csv- 파일 –

1

이 작동합니다 :

cp file1 file2 
perl -pi -e 's/" ,"/","/g' file2 
+0

너희들 감사합니다 : 당신은뿐만 아니라 쉼표 뒤에있는 공백을 제거하려면! – JCX

관련 문제