【发布时间】:2016-11-16 23:21:24
【问题描述】:
我正在尝试自动将网络日志从 Android 设备获取到 Windows 系统。为此,我需要发送多个命令。我可以使用其中的大多数,但现在我陷入了必须停止tcpdump 进程并使用adb pull 从设备复制捕获文件的位置。
我正在使用这个命令启动tcpdump:
adb shell su -c ./data/tcpdump -i any -s 0 -w /sdcard/Download/tcpdump.pcap
手动运行上述命令可以正常工作,所以我假设以下python 代码也不错:
self._proc3 = Popen(shlex.split(cmd),stdout=PIPE ,stderr=PIPE)
为了停止这个过程,我尝试了多种方法,例如:
发送 ctrl-c ,\x03\n,全部在Popen。另外,使用taskill 杀死子进程。但是,没有任何效果。未创建捕获文件。我不知道这是由于某些 Windows 限制还是我做错了什么。
【问题讨论】:
-
请为您的问题命名有意义的标题。在您的帖子中,您合理地描述了无法正确停止
tcpdump捕获过程的问题 - 但标题没有任何意义。
标签: android python automation subprocess adb