[解決済み] Pythonです。os.systemを実行した後にstdoutを取得するには?重複
2022-08-03 23:15:45
質問
を取得したい。
stdout
を実行した後、変数に
os.system
の呼び出しを実行した後に
この行を例にとって説明します。
batcmd="dir"
result = os.system(batcmd)
result
にはエラーコード(
stderr
0
Windows では
1
はlinuxの場合)。
どうすれば
stdout
を取得するにはどうしたらよいでしょうか?
どのように解決するのですか?
もし、あなたが必要なのは
stdout
の出力だけが必要な場合は
subprocess.check_output()
:
import subprocess
batcmd="dir"
result = subprocess.check_output(batcmd, shell=True)
というのも、あなたが使っていた
os.system()
を使っているので
shell=True
を設定しなければなりません。ただし
セキュリティに関する懸念
を考慮する必要があります。
をキャプチャする必要がある場合
stderr
も取り込む必要がある場合は、単に
stderr=subprocess.STDOUT
を呼び出すだけです。
result = subprocess.check_output([batcmd], stderr=subprocess.STDOUT)
で、エラー出力をデフォルトの出力ストリームにリダイレクトします。
出力がテキストであることが分かっている場合は、エラー出力に
text=True
を追加して、返されたバイトの値をプラットフォームのデフォルトエンコードで デコードするようにします。
encoding="..."
を使用します。このコーデックが受信したデータに対して適切でない場合は、代わりに
関連
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] Pythonで2つのリストを連結する方法は?
-
[解決済み] ファイルのコピー方法について教えてください。
-
[解決済み] 最小限の驚き」と「変更可能なデフォルトの引数
-
[解決済み] Pythonで文字列の部分文字列を取得するにはどうすればよいですか?
-
[解決済み] Pythonで標準エラー出力するには?
-
[解決済み] シェルコマンドの実行と出力のキャプチャ
-
[解決済み] 標準出力ではなく標準エラー出力にパイプを通すにはどうしたらいいですか?
-
[解決済み】ネストされたディレクトリを安全に作成するには?
-
[解決済み] pipの依存性/必要条件をリストアップする方法はありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] os.systemの出力を変数に代入し、画面に表示されないようにする [重複] 。
-
[解決済み] シェルコマンドの実行と出力のキャプチャ
-
[解決済み] 2つの線分が交差しているかどうかを確認するにはどうすればよいですか?
-
[解決済み] Django のテストデータベースをメモリ上だけで動作させるには?
-
[解決済み] 小数点以下1桁を取得する[重複]。
-
[解決済み] データフレームをソートした後にインデックスを更新する
-
[解決済み] PyQtアプリケーションのスレッド化。QtスレッドとPythonスレッドのどちらを使うか?
-
[解決済み] Flaskで非同期タスクを作る
-
[解決済み] Python Empty Generator 関数
-
[解決済み] PySparkでデータフレームのカラムをString型からDouble型に変更する方法は?