|
구분 기호로 사용되는 파일이 있습니다 . 일부 레코드에는 빈 셀이 있습니다 ||
(내부에는 아무것도 없음). |""|
다음 sed 명령으로 대체하려고합니다 .
sed -i 's/\|\|/\|""|/g' file
하지만 결과는 내가 기대했던 것과 달랐다.
입력 파일
A|B|C|D|||E
원하는 출력:
A|B|C|D|""|""|E
레코드의 시작과 끝에는 "|"가 없습니다.
어떤 도움이라도 주시면 감사하겠습니다.
답변1
출력이 변경되지 않을 때까지 대체를 반복하십시오.
$ echo 'A|B|C|D|||E' | sed ':X;s/||/|""|/g;tX'
A|B|C|D|""|""|E
어디
:X
라벨을 설정합니다X
t X
성공X
하면 라벨로 이동s///