使用符号链接更改父目录 (../)

Xod*_*rap 33 bash cd-command

我有一个符号链接

~/link -> ~/a/really/long/path
Run Code Online (Sandbox Code Playgroud)

当我做

cd ~/link
cd ..    
Run Code Online (Sandbox Code Playgroud)

它需要我

~
Run Code Online (Sandbox Code Playgroud)

但我想去

~/a/really/long
Run Code Online (Sandbox Code Playgroud)

有没有办法做到这一点?

我正在使用 bash。

Gil*_*il' 41

Bash(以及 ksh、zsh 甚至 ash)跟踪目录更改,因此即使是符号链接,它也cd /foo/bar && cd ..始终带您到。传递选项以忽略跟踪的更改并遵循“物理”目录结构:/foobar-Pcd

cd -P ..
Run Code Online (Sandbox Code Playgroud)

请参阅help cdman builtins获取有关 bash 内置文件的文档cd。如果你真的不喜欢目录跟踪功能,你可以set -P在 bash 中关闭它(set -o no_chase_link在 zsh 中)。