초기 일치 후 문자 사이의 모든 공백을 제거하고 싶습니다. 예는 다음과 같습니다
exmpl 0 t h i s a r e t he spaces to d e l e t e
exmpl 1 m o r e spaces to d e l
exmpl 2 o r s m t h completely d i f f e r e n t
exmpl 12 y e t another l i n e
출력은 다음과 같아야 합니다.
exmpl 0 thisarethespacestodelete
exmpl 1 morespacestodel
exmpl 2 orsmthcompletelydifferent
exmpl 12 yetanotherline
초기 텍스트와 숫자 사이, 숫자와 후속 텍스트 사이의 공백도 탭 문자일 수 있습니다.
예를 들어 sed에서 첫 번째 부분과 두 번째 부분을 일치시킬 수 있습니다.
sed -i 's/\(exmpl\s*[0-9]*\s*\)\(.*\)/\1\2/'
하지만 \2의 모든 공백을 제거하는 방법을 알 수 없습니다.
답변1
sed를 사용하세요:
sed -e 's/ //3g' file
exmpl 0 thisarethespacestodelete
exmpl 1 morespacestodel
exmpl 2 orsmthcompletelydifferent
exmpl 12 yetanotherline
3경기부터 교체