如何优雅地停止手机上的tcpdump进程?

2024-04-30 06:14:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试从Android设备自动获取网络日志到Windows系统。为此,我需要发送多个命令。我可以控制大部分的程序,但是现在我陷入了困境,我不得不停止tcpdump进程,并使用adb pull从设备复制捕获文件。在

我正在使用此命令启动tcpdump

adb shell su -c ./data/tcpdump -i any -s 0 -w /sdcard/Download/tcpdump.pcap

手动运行上述命令可以正常工作,因此我假设以下python代码也很好:

^{pr2}$

为了停止这个过程,我尝试了多种方法,比如:

发送ctrl-c,\x03\n,全部在Popen中。另外,使用taskill终止子进程。然而,什么都不管用。未创建捕获文件。我不知道这是由于某些Windows限制还是我做错了什么。在


Tags: 文件命令程序data进程windows系统shell
1条回答
网友
1楼 · 发布于 2024-04-30 06:14:05

您需要将SIGINT信号发送给tcpdump进程。在

根据可用的busybox/toolbox/toybox版本,以下将使所有正在运行的tcpdump实例停止捕获并转储日志:

adb shell su -c killall -q -2 tcpdump

相关问题 更多 >