ln: //: 是目录的原因是什么?

Igo*_*rio 5 bash directory slash autocomplete symlink

将目录链接到根目录时,出现此错误:

$ ln -s ~/inbox/ /
$ ln: //: Is a directory
Run Code Online (Sandbox Code Playgroud)

Bash 通过添加 / 自动完成目录路径。我试过逃跑但没有成功。

$ ln -s ~/inbox /
Run Code Online (Sandbox Code Playgroud)

虽然有效。为什么是这样?

Gil*_*il' 4

路径名解析中,尾随/相当于尾随/.\xe2\x80\x94 ,换句话说,~/inbox/相当于~/inbox/.在此上下文中。因此该ln命令尝试创建一个.在根目录中调用的链接(不出所料,失败了)。

\n\n

当您完成目录后/按下时,Zsh 会删除尾随(除非配置为不这样做)。Space我不知道 bash 是否可以做到这一点。

\n