sed에서 2개 이상을 검색하고 마지막 조건과 일치하는 문자열로 변환하는 방법은 무엇입니까?
sed를 사용하면 여러 검색 기준을 동시에 사용할 수 있습니다. 이렇게 하려면 각 검색 조건을 별도의 표현식으로 표현하고 쉼표(,)로 구분합니다. 예를 들어 “apple” 및 “orange”라는 단어가 포함된 파일의 모든 줄을 “fruit”로 바꾸려면 다음을 사용할 수 있습니다.
sed -e '/apple.*orange/ s/.*/fruit/' filename.txt
위의 예에서 `/사과. *주황색/`“apple”과 “orange”라는 단어가 모두 포함된 행을 찾는 검색어입니다. `s/.*/fruits/`전체 줄을 “fruit”로 바꿉니다.
“apple” 및 “orange”라는 단어를 서로 다른 줄에서 “fruit”로 바꾸려는 경우 두 가지 검색 기준을 사용할 수 있습니다.
sed -e '/apple/ {/orange/ s/.*/fruit/}' filename.txt
위의 예에서 `/사과/`“apple”이 포함된 행을 찾기 위한 검색 조건입니다.중괄호({}) 내에서 행에 대한 또 다른 검색 조건 `/주황색/`해당 줄을 “과일”로 바꿉니다.
이를 통해 두 개 이상의 검색 기준을 함께 사용하고 최종적으로 일치하는 문자열로 바꿀 수 있습니다.
—
- ChatGPT에서 답장을 받았습니다.
- ChatGPT가 답변함