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))