예를 들어 다음과 같은 두 가지 모드 간의 출력을 캡처하고 싶습니다.
sed -n '/^pattern1/,/^pattern2/p;/^pattern2/q'
하지만 이유 없이 출력을 캡처하고 싶습니다.
이것이 도움이 될 것이라는 것을 알고 있지만 grep -Ev
sed가 어떻게 작동하는지 알고 싶습니다.
답변1
다음을 사용해 볼 수 있습니다 awk
.
awk '/^pattern1/{p=1;next}/^pattern2/{p=0}p' file
p
변수는 패턴이 발견되면 설정 pattern1
되고 두 번째 패턴이 충족되면 재설정됩니다.
p
스크립트 끝의 if는 라인을 인쇄하는 기본 awk 작업을 트리거합니다 p==1
.