tcpdump
我正在尝试获取属于 while 循环一部分的 PID 。例子:
tcpdump -x -q -l -i $IFACE port $PORT | while read buffer; do
# process, if something received from tcpdump. Otherwise wait
done
$!
while 循环内不会提供 的 PID tcpdump
。
tcpdump
如何获取此构造中的 PID ?
答案1
如果您想运行该命令并稍后有条件地退出,您可以在单独的 shell 中运行它:
bash -c 'tcpdump -xli eth0 | while read buffer; do
if true; then exit; fi
done'