2

ディレクトリにcdするときにカスタムメッセージを表示する方法を探しています。例えば

$ cd some_folder
Warning: Don't edit these files!
some_folder $

古い投稿から、これを .bashrc ファイルに追加するという提案を見つけました。

reminder_cd() {
  builtin cd "$@" && { [ ! -f .cd-reminder ] || cat .cd-reminder 1>&2; }
}

alias cd=reminder_cd

このスクリプトでは、フォルダーにファイル .reminder_cd がある場合、そのファイルに cd するとそのファイルの内容が表示されます。

それは機能しますが、ディレクトリに cd するときに実行する他のスクリプトを強制終了するようです。具体的には、Ruby RVM が .rvmrc を使用してディレクトリに cd したときに Ruby のバージョンを切り替える機能を無効にします。

フォルダーに入ったときに使用される既存のスクリプトを消去しないように、上記の関数を変更する (またはまったく異なる手法を使用する) 方法はありますか?

4

1 に答える 1

2

RVM にはほとんどのコマンド用のフックがあり、作成できます。

hook="$rvm_path/hooks/after_cd_reminder"
echo "[ ! -f .cd-reminder ] || cat .cd-reminder 1>&2" > "$hook"
chmod +x "$hook"
于 2013-02-04T23:52:23.317 に答える