tcpdump の動作には非常に驚いています。次のようなエコーを行う簡単なコードを書きました。
ながら (n)
{
n = fread(buf, 16, 1, stdin);
printf("%s", buf);
fflush(stdout);
}
そして、私は次のようなことをします
$ tcpdump | ./EchoTest
エコー出力で多くの tcpdump パケットが抑制され、ある程度まで抑制されます。なぜそれが起こるのですか?? のようなもの
$ 猫ファイル | ./EchoTest
また
$ テール -f ファイル | ./EchoTest
("$ echo "blabla" >> ファイル付き)
完璧に動作し、すぐに出力が得られます。tcpdump がパイプラインで出力されるように強制する方法を知っている人はいますか??