터미널의 다른 파일에서 특정 검색어 뒤의 모든 내용을 포함하는 파일을 어떻게 만들 수 있나요?
예:
원본 파일 콘텐츠: foo, 바, 바즈, qux
검색어: 버즈
새 파일 콘텐츠: 버즈, 쿳스
답변1
GNU grep과 귀하의 질문과 동일한 예를 사용하여 다음을 수행할 수 있습니다.
$ echo 'foo, bar, baz, qux' | grep -o '\bbaz\b.*'
baz, qux
이 옵션은 -o
grep에게 줄의 일치하는 부분만 인쇄하도록 요청하고 단어 경계에서 일치하는지 \b
확인합니다 .baz
답변2
마지막으로 나는 사용했다pcregrep이를 위해. 여러 줄 파일에서 검색어 뒤의 모든 항목을 반환하는 가장 좋은 방법은 다음과 같이 searchTerm, originalFile 및 newFile을 바꾸는 것입니다.
pcregrep -M 'searchTerm((.|\n)*)' originalFile > newfile