【发布时间】:2013-11-11 20:48:45
【问题描述】:
我的主目录从辅助驱动器符号链接。当我在主目录中打开终端时,有时会解析符号链接,这会产生不幸的影响。因此我的提示从~/somedir/ 变为/Volumes/hdd/home/myuser/somedir/
我尝试在 ZSH 中使用 chpwd_functions 来解决这个问题:
function fix_home_path() {
cd $HOME${PWD##$(cd $HOME; pwd -P)}
}
chpwd_functions=(${chpwd_functions[@]} "fix_home_path")
显然,它不起作用,因为它会导致递归循环。
什么是正确的解决方案?
【问题讨论】:
-
顺便说一句,
chpwd_functions+=( fix_home_path )是一种更清晰的向钩子添加函数的方法。 -
啊!谢谢@chepner 的提醒,感谢!
-
如果我可以问,您的符号链接需要什么?我使用named directories 方便访问,但是(显然)缺少与文件系统相关的功能,因为它仅在 ZSH 级别上解决。
-
我发现将主目录保存在单独的驱动器/分区上更容易。它有助于系统重建,让我拥有快速 ssd 和大型 hdd 之类的东西。 (尽管这些天来这变得不那么令人担忧了,所以它主要是第一点)