bash スクリプトで "set -x" を設定するか、実行スクリプトを使用すると、bash -x
標準出力とともにすべての引数が画面に印刷されます。
stderrとstdoutを画面に印刷できますが、出力をset -x
画面に印刷せずにログファイルにリダイレクトできますか?
アイデアはログに得られるすべての情報を含みますが、通常のstdoutとstderrのみを画面に印刷することです。
ベストアンサー1
user1@mac1:~/tmp$ cat t1.sh
exec 4>shell.log
BASH_XTRACEFD=4
set -x
echo abc
cat ffff
user1@mac1:~/tmp$ bash t1.sh
abc
cat: ffff: No such file or directory
user1@mac1:~/tmp$ cat shell.log
+ echo abc
+ cat ffff
user1@mac1:~/tmp$