import subprocess
subprocess.call('./your_script.sh')
上記の例では、subprocess.call()
関数を使用して、指定したシェルスクリプト(your_script.sh
)を呼び出しています。シェルスクリプトはPythonスクリプトと同じディレクトリに存在している必要があります。また、シェルスクリプトが実行可能であることを確認してください。
もしシェルスクリプトに引数を渡したい場合は、subprocess.call()
関数にshell=True
オプションを指定してコマンドラインを解釈させることができます。以下に例を示します。
import subprocess
subprocess.call('./your_script.sh arg1 arg2', shell=True)
上記の例では、arg1
とarg2
がシェルスクリプトに引数として渡されます。
さらに高度な制御をしたい場合は、subprocess
モジュールの他の関数やクラスを使用することもできます。subprocess.run()
関数はより柔軟な方法でシェルスクリプトを呼び出すことができます。以下に例を示します。
import subprocess
result = subprocess.run(['./your_script.sh', 'arg1', 'arg2'], capture_output=True, text=True)
print(result.stdout)
上記の例では、subprocess.run()
関数を使用してシェルスクリプトを呼び出し、実行結果をresult
変数に格納しています。capture_output=True
オプションを指定すると、シェルスクリプトの標準出力を取得することができます。text=True
オプションを指定すると、出力結果を文字列として取得できます。