tshark
출력을 awk
으로 연결하려고합니다. tshark 명령은 자체적으로 잘 작동하며 cat
과 같은 다른 프로그램으로 파이프되면 제대로 작동합니다 (출력의 실시간 인쇄). 그러나, awk에 파이프 될 때, 멈추고 아무 일도 일어나지 않습니다.awk 연결이 끊어졌습니다.
sudo tshark -i eth0 -f "tcp" -R 'http.request.method=="GET"' | awk '{print $0}'
과 비교, 좋은 다음 작품 (비록 매우 유용하지 않습니다) : 사전에
sudo tshark -i eth0 -f "tcp" -R 'http.request.method=="GET"' | cat
덕분에 여기
sudo tshark -i eth0 -l -f "tcp" -R 'http.request.method=="GET"' -T fields -e ip.src -e ip.dst -e
tcp.srcport -e tcp.dstport -e tcp.seq -e tcp.ack | awk '{printf("mz -A %s -B %s -tcp \"s=%s sp=%s
dp=%s\"\n", $2, $1, $5, $4, $3)}'
는 더 간단 버전입니다.
Linux의 OS/버전을 알려주십시오. 또한 시스템에'unbuffer'가 있다면, 그것을 믹스에 추가하십시오. 예쁜 해결책은 아니지만, 필요한 경우 작동시킬 수 있습니다. 행운을 빕니다. – shellter
우분투 11.04 사용. 나는 언 버퍼와 함께 가졌지 만 운은 없다. 단지 멈춘다. – Kevin
질문이 잘 문서화되어 있습니다. 그러나 ...'cat'을 사용한 마지막 예제가 tshark에 대한 모든 옵션, 즉'-T fields ... '가 사용될 때도 작동한다고 가정하는 것이 안전할까요? 'awk'는 출력을 처리하는 데 문제가 없어야합니다. 또한'sudo'를 사진에서 꺼내면 어떻게 될까요? 행운을 빕니다. – shellter