我正在寻找一种在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,则当我进入该文件夹时会显示该文件的内容。
这样可行,但是当你进入目录时,它似乎会杀死其他做事的脚本。具体来说,它会破坏Ruby RVM使用.rvmrc在cd进入目录时切换ruby版本的能力。
有没有办法修改上面的函数(或使用完全不同的技术),以便它不会消除输入文件夹时使用的任何现有脚本?
答案 0 :(得分:2)
RVM有大多数命令的钩子,你可以创建一个:
hook="$rvm_path/hooks/after_cd_reminder"
echo "[ ! -f .cd-reminder ] || cat .cd-reminder 1>&2" > "$hook"
chmod +x "$hook"