![특정 줄과 그 뒤의 17줄 삭제 [중복]](https://linux55.com/image/130804/%ED%8A%B9%EC%A0%95%20%EC%A4%84%EA%B3%BC%20%EA%B7%B8%20%EB%92%A4%EC%9D%98%2017%EC%A4%84%20%EC%82%AD%EC%A0%9C%20%5B%EC%A4%91%EB%B3%B5%5D.png)
IP 주소, 호스트 이름 등 일부 정보를 추출하는 보고서가 있습니다. 일부 서버에는 다음과 같은 헤더가 있습니다. NOTICE TO USERS(약 17줄의 텍스트 정보가 이어짐) 파일을 분류할 때 NOTICE가 필요하지 않습니다(일부 서버에는 17줄이 더 있습니다). 어떻게 제거할 수 있나요?
답변1
awk '/NOTICE TO USERS/ { lastdelline=NR+17 };
lastdelline>0 && NR<=lastdelline { next; }; { print; }' inputfile
답변2
다음 sed 명령을 사용하여 동일한 효과를 얻을 수 있습니다
sed '/NOTICE TO USERS/,+17d' filename
동일한 파일에서 NOTICE TO USERS 라인이 포함된 17행을 삭제하려면 sed 명령에서 -i 옵션을 사용할 수 있음을 의미합니다.
sed -i '/NOTICE TO USERS/,+17d' filename