您可以使tcpdump用“ -l”行缓冲。然后,您可以使用子流程捕获输出结果。
import subprocess as subp = sub.Popen(('sudo', 'tcpdump', '-l'), stdout=sub.PIPE)for row in iter(p.stdout.readline, b''): print row.rstrip() # process here
您可以使tcpdump用“ -l”行缓冲。然后,您可以使用子流程捕获输出结果。
import subprocess as subp = sub.Popen(('sudo', 'tcpdump', '-l'), stdout=sub.PIPE)for row in iter(p.stdout.readline, b''): print row.rstrip() # process here