シェル スクリプトで、コマンドの出力だけでなくその出力元であるコマンド ライン自体も表示したいときがあります。そんなときは -x オプションが便利です。
set -x
$ date
+ date
Thu Apr 18 12:00:00 JST 2013
$ date +%Y%m%d
+ date +%Y%m%d
20130418
$ set +x
+ set +x
解除するときは set +x を実行しますが、set +x
まで表示されてしまうのはイマイチ。
そんなときはサブシェル内で set -x すればサブシェル終了とともに解除されます。
( set -x ; date ; date +%Y%m%d )
+ date
Thu Apr 18 12:10:00 JST 2013
+ date +%Y%m%d
20130418