python2.6 を使用して、subprocess.Popen()
またはos.system()
2 つのタスクを実行する方法はありますか? 例では、スクリプトはairodump-ng
最初に " " 実行され、次にこのプロセスはサブであり、非表示になります (端末から出力されないことを意味します)。その後sniff
、scapy の機能を含む残りのスクリプトを " " 実行し続けます。調べてみましたが、Windows版とpython3しか見つかりませんでした。ちなみに私はdebianで動いています。
2 に答える
1
subprocess.Popen
と組み合わせて使用subprocess.PIPE
:
p = Popen(['airodump-ng', …], stdin=PIPE, stdout=PIPE, stderr=PIPE)
プロセスが使用を終了するまで待ちたい場合:
stdout, stderr = p.communicate()
上記のコードを省略するairodump-ng
と、バックグラウンドで実行され、目に見える出力が生成されませんが、Python コードを続行できます。
別の方法はos.devnull
、の出力をリダイレクトするために使用するairodump-ng
ことです。これにより、生成された出力が完全に削除されます。
devnull = os.open(os.devnull, os.O_WRONLY)
p = Popen(['airodump-n', …], stdout=devnull, stderr=devnull)
于 2012-07-21T08:40:44.647 に答える
0
コマンドを配置した場所で、airodump-ng
その部分を次のように置き換えますtimeout 'X's airodump-ng mon'X'
于 2016-09-05T20:43:10.037 に答える