ホームページ > バックエンド開発 > Python チュートリアル > Python の「subprocess」モジュールでコマンドをパイプする方法は?

Python の「subprocess」モジュールでコマンドをパイプする方法は?

Mary-Kate Olsen
リリース: 2024-12-13 16:20:13
オリジナル
364 人が閲覧しました

How to Pipe Commands in Python's `subprocess` Module?

Python のサブプロセスを使用してコマンドをパイプする方法

質問: で subprocess.check_output() を利用するにはどうすればよいですか? ps -A | などのパイプコマンドgrep 'process_name'?

回答:

subprocess モジュールでパイプを使用することは可能ですが、セキュリティ上の懸念があるため、注意して shell=True を使用することをお勧めします。代わりに、ps プロセスと grep プロセスを分離し、その出力をパイプすることを検討してください。

ps = subprocess.Popen(('ps', '-A'), stdout=subprocess.PIPE)
output = subprocess.check_output(('grep', 'process_name'), stdin=ps.stdout)
ps.wait()
ログイン後にコピー

ただし、この特定のケースでは、より簡単な解決策は subprocess.check_output(('ps', '-A') を呼び出すことです。 ) を実行し、出力に対して str.find を実行します。

以上がPython の「subprocess」モジュールでコマンドをパイプする方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート