다음과 같은 내용이 있는 경우:
hello {sdsdsdsds} pattern {askjdasjkdjasd} hello {siadsd} pattern {iuewer}
따라서 패턴이 이전에 일치했다면 .output {*}
을 추가해야 합니다 ;
.
hello {sdsdsdsds} pattern {askjdasjkdjasd}; hello {siadsd} pattern {iuewer};
네, 딱 한 줄이에요.
이제 나는 다음과 같은 것을 생각합니다.
's{.*}/
sed
하지만 내용을 어떻게 기억하는지 잘 모르겠습니다 .*
.
그리고 이런 게 있어요.
'/pattern\ {.*}/ s/$/;/'
하지만 행이 하나만 있기 때문에 작동하지 않습니다.
답변1
내가 찾고 있는 문제를 올바르게 이해했다면
sed 's/\(pattern {[^}]*}\)/\1;/g'
where \1
내부에서 일치하는 모든 것을 대체합니다 \(...\)
.
산출:
hello {sdsdsdsds} pattern {askjdasjkdjasd}; hello {siadsd} pattern {iuewer};