我在目录中,~/a
它是 的符号链接~/b/c
。我的提示符如下所示:
~/a$
但我希望cd
能够~/b/c
。
~/a$ cd .
~/a$
这不管用。正确的方法是什么?
答案1
以下是改变给定符号链接的目标的方法:
cd -P .
下面是它的工作原理
user@host:~/tmp$ ls
@a b
user@host:~/tmp$ file a
a: symbolic link to `b/c'
user@host:~/tmp$ cd a
user@host:~/tmp/a$ cd .
user@host:~/tmp/a$ cd -P .a
user@host:~/tmp/b/c$
您可以将其别名为
cdl='cd -P'
来自 bash 手册:
这-P选项表示使用物理目录结构而不是遵循符号链接
答案2
如果您只是想进入其他目录,那么解决方案是手动输入(否则系统将不会按照链接返回到其源)。
例子:
cd ~/b/c
您可以使用以下方式为其分配别名:
alias cdtobc="cd ~/b/c"
(以上只是示例,当然您可以根据需要替换值)。