ホームページ >バックエンド開発 >Python チュートリアル >Python で subprocess.run を使用してコマンド出力をファイルにリダイレクトする方法は?

Python で subprocess.run を使用してコマンド出力をファイルにリダイレクトする方法は?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-15 15:30:03237ブラウズ

How to Redirect Command Output to a File with subprocess.run in Python?

Python のサブプロセスによる出力のリダイレクト

このスニペットでは、複数のファイルの内容を 1 つに結合するコマンドを実行することを目的としています。 Python のサブプロセス モジュールを使用してファイルを作成します。私たちの目標は、コマンドの出力をコンソールに表示せずにファイルにリダイレクトすることです。

Python 3.5 では、開いているファイル ハンドルを subprocess.run の stdout 引数に渡すことで、このリダイレクトを実現できます。

input_files = ['file1', 'file2', 'file3']
my_cmd = ['cat'] + input_files
with open('myfile', "w") as outfile:
    subprocess.run(my_cmd, stdout=outfile)

with ブロックは、操作後に「myfile」ファイルが適切に閉じられることを保証します。 subprocess.run 関数はコマンドを実行し、出力を指定されたファイルにリダイレクトします。

このタスクには cat などの外部コマンドを使用する必要がないことに注意してください。ファイルを読み取って、その内容を Python プログラム内で連結するだけです。

以上がPython で subprocess.run を使用してコマンド出力をファイルにリダイレクトする方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。