Python では、os.system を使用してシステム コマンドを実行し、値を返しますコマンドの終了ステータスを示します。ただし、コマンドの出力は通常、画面に表示されます。これは、特定の状況では望ましくない場合があります。
コマンド出力を変数に割り当て、それが画面に表示されないようにするには、os.system の代わりに os.popen() 関数を使用できます。 os.popen() は、コマンドの出力を読み取るために使用できるパイプ オブジェクトを返します。
import os # Use os.popen to capture the output of the command popen_object = os.popen('cat /etc/services') # Read the output from the pipe object output = popen_object.read() # Print the output, which will not be displayed on the screen print(output)
あるいは、より強力な subprocess.Popen クラスを使用して、サブプロセスの管理と通信を行うこともできます。 subprocess.Popen を使用して同じ結果を達成する方法を次に示します。
import subprocess # Create a subprocess object proc = subprocess.Popen(['cat', '/etc/services'], stdout=subprocess.PIPE) # Communicate with the subprocess and retrieve its output output, _ = proc.communicate() # Print the output, which will not be displayed on the screen print(output)
以上が画面を表示せずに Python でシステム コマンド出力をキャプチャして変数に割り当てる方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。