Pythonには、外部コマンドを実行するためのモジュールがあります。その1つが、os.system
です。このモジュールを使うことで、Pythonから外部コマンドを呼び出すことができます。
os.systemの基本的な使い方
os.system
は、引数に渡されたコマンドを実行します。例えば、ls
コマンドを実行する場合は、以下のようにします。
import os os.system('ls')
このコードを実行すると、ls
コマンドが実行され、ファイルやディレクトリの一覧が表示されます。
os.systemで実行するコマンドの書き方
os.system
で実行するコマンドは、文字列として渡します。つまり、単純な文字列として書くことができます。
また、コマンドに引数を渡す場合は、以下のように書きます。
import os os.system('ls -l')
この場合、ls
コマンドに-l
オプションを渡しています。このように、通常のコマンドラインと同様に書くことができます。
os.systemの戻り値の意味と利用方法
os.system
は、実行したコマンドの終了コードを返します。終了コードが0の場合は、正常終了したことを示します。一方、終了コードが0以外の場合は、エラーが発生したことを示します。
この戻り値を利用することで、Pythonから実行したコマンドが正常に終了したかどうかを判断することができます。
import os ret = os.system('ls') if ret != 0: print('lsコマンドの実行に失敗しました。')
os.systemの標準出力とその取得方法
os.system
で実行したコマンドの標準出力を取得するには、subprocess
モジュールを使います。
例えば、ls
コマンドの標準出力を取得する場合は、以下のようにします。
import subprocess result = subprocess.check_output(['ls']) print(result)
このコードを実行すると、ls
コマンドの標準出力が表示されます。
os.systemを活用した具体的なケースとコード例
os.system
は、外部コマンドを実行するための汎用的なモジュールです。そのため、様々な場面で活用することができます。
例えば、以下のようなコードを考えてみましょう。このコードは、git
コマンドを使ってリポジトリをクローンするものです。
import os url = 'https://github.com/xxxx/yyyy.git' os.system('git clone ' + url)
このコードを実行することで、指定したURLのリポジトリがクローンされます。
まとめ
os.system
は、Pythonから外部コマンドを呼び出すためのモジュールです。このモジュールを使うことで、Pythonから様々なコマンドを実行することができます。
また、os.system
の戻り値を利用することで、実行したコマンドが正常に終了したかどうかを判断することができます。さらに、subprocess
モジュールを使うことで、実行したコマンドの標準出力を取得することもできます。