2017-01-09 9 views
-2

私は2つのプログラム、p1とp2を持っています。私はp1を実行する| p2。私はp2 stdinのp1からstdoutを読み込む方法を知っています。どうすればstderrでも同じことができます。ほとんど(またはすべての)シェルでstdin、stderr from Python

おかげで、

ニコラス
+0

これはPythonに関連していないようですが、bashに関連しています。なぜならあなたは明らかにパイプを使用しているからです。 stderrをstdoutにリダイレクトするか、2 | |の代わりに| – MacHala

答えて

3

パイプ(|)は、コマンドの標準出力を受け取り、第2のコマンドに渡します。

したがって、最初のコマンドからstderrを取得することは、コマンドラインでのみ行うことができます。 bashでは、次のようにします:

p1 2>&1 | p2 

これは、stderrをstdoutに転送するようにbashに指示します。両方ともp2にパイプされます。

また、p1をすべて標準出力にすることもできます。

+0

p2からstdinを印刷した場合、p1からstderrとstdoutが送信された位置を知る方法はありますか? – dagnic

+0

申し訳ありませんが、あなたの問題についてより具体的に説明する必要があります。 –

関連する問題