ln -s 是否要求您位于某个目录中?

eva*_*phy 3 linux unix symbolic-link ln

我想为文件创建一个简单的符号链接。

如果我从要创建符号链接的目录中运行命令,它会完美运行:

/path/to/link $ ln -s /path/to/file .
Run Code Online (Sandbox Code Playgroud)

但是如果我在任何其他目录中,它每次都会创建一个断开的链接:

/any/other/path $ ln -s /path/to/file /path/to/link
Run Code Online (Sandbox Code Playgroud)

是否ln -s要求您位于某个目录中,还是我遗漏了什么?运行 Ubuntu 10.04。

更新:对于路径是相对路径还是绝对路径的混淆,我们深表歉意。他们是相对的,正如他们在回答中提到的那样,这是我问题的根源。谢谢!

小智 5

如果您与目标不在同一目录中,则必须确保使用绝对路径。

ln -s foo/bar baz/quux # fails

ln -s ~/foo/bar baz/quux # succeeds
Run Code Online (Sandbox Code Playgroud)