3
execを使用して後続のすべてのコマンドのstderrをリダイレクトします
すべての出力を1つのファイル、デバッグログ、およびターミナルにリダイレクトする必要があるbashファイルがあります。stdoutとstderrの両方をデバッグにリダイレクトし、スクリプト内のすべてのコマンドのログを記録する必要があります。 2>&1 | tee -a $DEBUGファイル内のすべてのコマンドに追加する必要はありません。私は一緒に暮らすことができました| tee -a $DEBUG。 私のようなものでそれをする方法があったことを覚えていますexec 2>&1。 現在、私は次のようなものを使用しています: #!/bin/bash DEBUGLOG=/tmp/debug exec 2>&1 somecommand | tee -a $DEBUGLOG somecommand2 | tee -a $DEBUGLOG somecommand3 | tee -a $DEBUGLOG しかし、それは機能しません。誰かが解決策を持っていますか/原因を説明できますか?