쉼표 뒤의 한 문자 삭제

쉼표 뒤의 한 문자 삭제

쉼표로 구분된 2~6개의 필드를 표시하는 고유 열이 있는 텍스트 파일(약 300,000줄)이 있습니다.

A,BB,CC  
EF,GHI,DKLM,OP          
Q,RS,TUV 
W,XY 

내가 달성하고 싶은 것:

A,B,C  
EF,HI,KLM,P         
Q,S,UV 
W,Y 

즉, 각 줄의 각 쉼표 뒤의 첫 번째 문자를 제거하고 싶습니다.

귀하의 시간과 도움에 미리 감사드립니다. 감사합니다,

로랑

답변1

$ cat file
A,BB,CC
EF,GHI,DKLM,OP
Q,RS,TUV
W,XY
$ sed 's/,./,/g' file
A,B,C
EF,HI,KLM,P
Q,S,UV
W,Y

정규식은 ,.리터럴 쉼표 뒤에 다른 문자가 오는 것과 일치합니다. 이 sed표현식은 s/,./,/g 각 쉼표와 뒤따르는 문자를 쉼표만으로 대체하여 다른 문자를 효과적으로 제거합니다. 모든 줄에서 겹치지 않는 모든 항목을 바꿉니다.

출력을 새 파일로 리디렉션하거나 적절하게 함께 사용하십시오 sed(참조-ised -i(제자리에서 편집)를 사용하여 이식성을 달성하는 방법은 무엇입니까?).

관련 정보