如何创建指向目录的链接


321

如何创建一个链接xxx/home/jake/doc/test/2000/something/

假设xxx已在下方建立,/home/jake而您目前在中/home/jake。当您这样做时cd xxx,您将直接转到/home/jake/doc/test/2000/something/


2
为什么是这个问题off-topic
Eyal Levin

它可能被认为是在unix.stackexchange.com属于一个问题
jcollum

Answers:


590

符号或软链接(文件或目录,更灵活,可自我记录)

#     Source                             Link
ln -s /home/jake/doc/test/2000/something /home/jake/xxx

硬链接(仅文件,灵活性较差且无法自我记录)

#   Source                             Link
ln /home/jake/doc/test/2000/something /home/jake/xxx

更多信息:man ln


/home/jake/xxx就像一个新目录。为了避免出现“不是目录:没有这样的文件或目录”错误,例如@trlkly注释,请在目标中使用相对路径,即使用示例:

  1. cd /home/jake/
  2. ln -s /home/jake/doc/test/2000/something xxx

48
请注意,此语法必须使用完整路径。我不得不使用ln "$(pwd)/relative_path" xxx,以获取xxx使用相对路径的绝对链接。显然,bash破坏规则并未针对SOURCE进行扩展。
2013年

ln -s / home / jake / destination / home / jake / link_name
Turako

1
我的Debian所说的是“不允许目录使用硬链接”
zbig

@zbig如前所述,硬链接仅是文件。对于目录,请使用ln -s
Azuaron

1
坦率地说,手动编写完整路径。“ ln”命令甚至不会扩展主目录“〜”。
安东·塔拉申科

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.