お仕事では作業ログは大変重要な証拠となる。各コマンドの実行した時間も分かるとより良い証拠となる。しかし、各コマンド実行前後にdateコマンドを打つのは面倒だ。 できれば、自動で。そう、プロンプトなんかに表示されると大変嬉しい。Linuxなんかだと高級なbashやzshがあるのでプロンプトに\tや%Tがあるので楽なのだが、残念ながらAIXデフォルトのシェルであるkshには現在時間に置換してくれる特殊文字が無い。 POSIXは辛いよ...と泣き言を言っても仕方ないので、苦肉の策。trapを用いる。 システム・ユーザーズ・ガイド: オペレーティング・システムおよびデバイス - Korn シェル (POSIX シェル) の組み込みコマンド trapは主にシグナルを受け取った時の挙動を記述するコマンドだが、引数のsignalにDEBUGを指定するとコマンド実行後の動作を指定できるのだ。 ${HOME