bash を使用すると、プロセスの置換を使用できますが、次の出力が引き続き表示されますjava scalaProg.Pkg
。
python py_prog.py | java scalaProg.Pkg 2> >(python logging_program.py)
または、tee に配置して、ターミナルでも stderr を確認できます。
python py_prog.py | java scalaProg.Pkg 2> >(tee >(python logging_program.py))
java scalaProg.Pkg
エラーメッセージを送信するのが実行中のシェルである場合は、それをサブシェルにカプセル化してエラーを取得することもできます。
python py_prog.py | (java scalaProg.Pkg;) 2> >(tee >(python logging_program.py))
すべてを取得する必要がある場合 (stdout と stderr の両方から)、次のようにjava scalaProg.Pkg
します。
python py_prog.py | java scalaProg.Pkg > >(tee >(python logging_program.py)) 2>&1
またはこれ:
python py_prog.py | (java scalaProg.Pkg;) > >(tee >(python logging_program.py)) 2>&1
すべての stdout と stderr を両方から取得したい場合は、次python py_prog.py
のようにjava scalaProg.Pkg
します。
{python py_prog.py | java scalaProg.Pkg;} > >(tee >(python logging_program.py)) 2>&1
または、これには、呼び出しシェルからも生成される可能性のあるエラーが含まれます。
(python py_prog.py | java scalaProg.Pkg;) > >(tee >(python logging_program.py)) 2>&1
セッションから stderr のみを取得したい場合は、次を使用します2>
。
(python py_prog.py | java scalaProg.Pkg;) 2> >(tee >(python logging_program.py))