作業の痕跡を探るにはhistoryコマンドが使えます。でも更に、このコマンドを実行したのは何時頃だっけ?ということを調べたくなったりします。例えば何かトラブルをやらかしてしまったときの原因調査の時とかね。ですがデフォルトでは実行時刻は分かりません。 そんな時に困ることが無いよう、普段から以下の設定をしておけばhistoryで各コマンドの実行時刻が表示出来るようになります。環境変数にexportせず単に変数をセットしておくだけでOKです。
cdの引数が相対パスのままコマンドヒストリに残って便利な例が思いつかないので、絶対パスでコマンドヒストリに残すようにする。 具体的には、以下のシェル関数を.bashrcに書く。 if [[ -n "$PS1" ]]; then cd() { command cd "$@" local s=$? if [[ ($s -eq 0) && (${#FUNCNAME[*]} -eq 1) ]]; then history -s cd $(printf "%q" "$PWD") fi return $s } fi いくつかの重要なポイントを以下に記す。 cdの定義を上書きしているが、このような場合中で普通にcdを呼ぶと再帰してしまうためcommand組み込みコマンドを使う。 "$@"の代わりに"$1"を使うことはできない。cdを引数なしで呼んだときホームディレクトリに移動しなくなってしまう。 cdの
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く