Windows10で、Python3から以下のようにコマンドを実行します。
python
1res = subprocess.run(["cmd", "/c", "copy", r"C:\test\abc.txt", r"C:\test2"], encoding="cp932", capture_output=True) 2 3print(res) 4print("正常:", res.stdout) 5print("異常:", res.stderr)
エラーを出させる目的であえて存在しないファイル名を指定しましたので、以下のような結果です。
python
1CompletedProcess(args=['cmd', '/c', 'copy', 'C:\\test\\abc.txt', 'C:\\test2'], returncode=1, stdout='指定されたファイルが見つかりません。\n', stderr='') 2正常: 指定されたファイルが見つかりません。 3 4異常:
returncodeが0ではなく1になっており、stderrに格納されるものと思いましたが、
stderrは空になっており、stdoutに格納されたようです。
これはなぜですか?

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/05/03 12:50
2023/05/03 13:06