두 개 이상의 공백을 쉼표로만 바꾸려면 쉘 스크립트를 사용해야 합니다.

두 개 이상의 공백을 쉼표로만 바꾸려면 쉘 스크립트를 사용해야 합니다.

다음 값이 포함된 텍스트 파일이 있습니다.

Id      unit    Date             status
KGE1    1222    21-12-19 16:20   Deployed
KGE2    1222    21-12-19 16:20   Pending

연속된 공백을 쉼표로 바꾸고 싶습니다. 다음 명령을 사용하고 있지만 날짜와 시간 사이에 쉼표도 추가됩니다. 안내해주세요.

sed 's/ \{1,\}/,/g' txncount.txt > csvcount.txt

산출:

KGE1,1222,21-12-19,16:20,Deployed
KGE2,1222,21-12-19,16:20,Pending
KGE3,1222,21-12-19,16:21,Email_Sent
KGE4,1222,21-12-19,15:00,Pending
KGE5,1222,21-12-19,15:10,Deployed

예상 출력:

KGE1,1222,21-12-19 16:20,Deployed
KGE2,1222,21-12-19 16:20,Pending
KGE3,1222,21-12-19 16:21,Email_Sent
KGE4,1222,21-12-19 15:00,Pending
KGE5,1222,21-12-19 15:10,Deployed

두 개 이상의 공백으로 이루어진 연속된 쉼표만 쉼표로 바꿔야 합니다.

답변1

그것은<txncount.txt sed -r 's/ {2,}/,/g' >csvcount.txt

관련 정보