tcpdump 파일이 있습니다.
특정 패킷을 삭제하고 싶습니다. 가지고 있기 때문에 쉽게 발견할 수 있습니다.
0x0000: a6a6 a6a6 a6a6 a6a6 ........
데이터의 첫 번째 행으로
전체 패킷은 다음과 같습니다(비교하다) 좋다:
16:24:46.132673 00:35:1a:71:91:37 (oui Unknown) > 05:05:05:c5:05:05 (oui Unknown), ethertype Unknown (0x88be), length 60:
0x0000: a6a6 a6a6 a6a6 a6a6 0101 2400 00b4 b83e
0x0010: 931f 00be 7c80 545a 0202 0000 0000 00a5
0x0020: a5a5 a500 0000 0000 0000 0000 0000
그래서 제가 하고 싶은 말은 이렇습니다.
"이 패턴이 포함된 줄, 패턴 앞의 줄, 패턴 뒤의 두 줄을 삭제하세요."
sed, awk, grep 모두 괜찮습니다.예를 들어
$ sed -i 'magic' file
마법을 대체할 아이디어가 있나요?
답변1
결과는 'vim을 사용하세요', 자세한 내용은 다음과 같습니다.
역방향으로 grep하고 "이전" 및 "이후" 줄을 제외하는 방법
$ vim -Nes "+g/a6a6\ a6a6/.-1,.+2d" '+w !tee' '+q!' file >newfile