Pythonの標準モジュールであるsubprocess
は、PythonからOSコマンドを実行するためのモジュールです。この記事では、Pythonとsubprocessモジュールを用いてLinuxコマンドを実行する方法について解説します。
subprocessとは?
subprocess
モジュールは新しいプロセスの開始、入力/出力/エラーパイプの接続、リターンコードの取得を可能とします。簡単に言うと、subprocess
を使うとPythonからOSコマンドを実行できます。
subprocessのシステム要件
subprocess
はPythonの標準モジュールであり、Python 3.5以降が必要になります。また、subprocess
が推奨される利用方法はrun()
関数を用いる方法になります。
subprocessのインストール
subprocess
はPythonの標準モジュールであるため、別途追加でインストールする必要はありません。ただし、Python3.7以降の利用が推奨されます。
subprocessの動作確認
subprocess
の動作を以下のパターンで確認します。
戻り値なし
Python上で実行しても、コマンドの実行結果が変数に格納されないパターンです。
import subprocess
proc = subprocess.run(["ls", "-l", "/etc/ssh"])
戻り値あり
proc
にコマンドの実行結果を入れるためには、capture_output
をTrue
に設定します。
import subprocess
proc = subprocess.run(["ls", "-l", "/etc/ssh"], capture_output=True)
以上、Pythonとsubprocessモジュールを用いてLinuxコマンドを実行する方法について解説しました。これらの知識を活用して、PythonからLinuxコマンドを効率的に実行してみてください。.