3

我可以从命令行运行一个进程,它将数据连续写入文件,直到我告诉它停止,并且可以在进程运行时访问(读取)。

但是,如果我通过 pexpect 运行相同的命令,文件将保持为空(尽管可以读取),直到我停止 pexpect 实例。只有这样,文件才会填满数据。

这只是 pexpect 的一个功能还是我在这里做错了什么?

pexpect 命令:

child = pexpect.spawn('airodump-ng', ['-a', '-w', '/root/Desktop/TEST', '--output-format', 'csv', INTERFACE])
4

1 回答 1

0

我从未使用过airodump-ng;如果它是一项“一劳永逸”的练习(无交互),您应该将其pexpect.run()用于非交互任务,例如ls -la

results = pexpect.run('ls -la')

如果您需要交互,只需将您的参数放在一个字符串中......

child = pexpect.spawn('airodump-ng -a -w /root/Desktop/TEST --output-format csv %s' % INTERFACE)
于 2012-06-06T05:21:33.370 回答