私がやろうとしているのは、airodump-ng の出力を 10 秒ごとに記録することです。
最初の試行:
airodump
-ng のドキュメントに目を通すと、そのようなコマンドについて言及されています。--write-interval
sudo airodump-ng mon0 -w testOutput --write-interval 10 -o csv
--write-interval
2 回目の試行: Python で自分でこれをやってみました。その後、プロセスを停止しようとする問題に遭遇しました。私が得た最も近いのはこの解決策でした。
airodump = subprocess.Popen(['sudo', 'airodump-ng', 'mon0', '-w', 'pythonTest'],
stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
o_airodump, unused_stderr = airodump.communicate(timeout=15)
airodump.kill()
これによりプロセスが停止し、関連する出力ファイルがありますが、実行中のすべてのプログラムが閉じられ、Ubuntu からログアウトされます。
追加情報:
すべてが終了してログアウトする直前に、端末にエラー メッセージが表示されました。すぐにスクリーンショットを撮って、それが何を言っているのかを確認しました。
Traceback (most recent call last):
File "airodump-call.py", line 3, in <module> o_airodump, unused_stderr = airodump.communicate(timeout=15)
File "/usr/lib/python3.5/subprocess.py", line 1072, in communicate stdout, stderr = self.communicate(input, endtime, timeout)
File "usr/lib/python3.5/subprocess.py", line 1713, in _communicate raise TimeoutExpired(self.args, orig_timeout)
subprocess.TimeoutExpired: Command '['airodump-ng', 'mon0', '-w', 'pythonTest']' timed out after 15 seconds