(まず、1時間探していたので、これが繰り返されていないと確信しています)
1 つのコマンドを 1 回実行し、次のことを行うスクリプトを作成する必要があります。
- stdout と stderr の両方をファイルに保存します (適切な順序を維持しながら)
- stderr のみを変数に保存します。
そのようなファイルがある場合、ポイント1の詳細
echo "one"
thisisanerrror
echo "two"
thisisanotherError
出力、エラー、出力、エラーの順に表示されることを期待する必要があります (したがって、連結では不十分です)。
私が最も近いものは次のとおりです。ログファイルが破損しているようです。
errs=`((./someCommand.sh 2>&1 1>&3) | tee /dev/stderr ) 3>file.log 2>&3 `