【问题标题】:cd to symbolic link in linux shows errorcd到linux中的符号链接显示错误
【发布时间】:2014-05-23 20:00:51
【问题描述】:
XXXXX:~/a/n1$ ln -s n1 n
XXXXX:~/a/n1$ ls
bin      doc  n  nc.tcsh  packages  scripts  support  VERSION
XXXXX:~/a/n1$ cd n
bash: cd: n: No such file or directory

我正在创建一个指向 n1 的符号链接,即 n。 现在,当我在 bash 或 shell 中执行 cd 时,我无法做到。

缺少什么。

【问题讨论】:

  • ~/a/n1/n1 不存在
  • 死链接通常通过在您创建链接的目录中键入“ls -la”来检测并突出显示红色(至少在 bash 中)。

标签: posix symlink


【解决方案1】:

ln -s target linkname 完成符号链接。

当前目录中不存在目标“n1”,但仍会建立链接,尽管是死链接。当你在当前目录(如mkdir n1)创建子目录“n1”时,链接将不再失效。

如果您要创建指向当前目录“.”的符号链接,则命令为:ln -s . n。请注意,这将使其递归,使cd n/n/n/n/ 成为可能。

【讨论】:

  • 或者:ln -s ../n1 n(或 ln -s ${PWD} n 用于完整路径链接 - 尽管效率稍低...)。
  • 我想我错过了一些东西。这是我的 RL 示例:ln -s ~/Library/Android/ androidsdk 你说创建一个目录来删除死链接,mkdir androidsdk,控制台错误:mkdir: androidsdk: File exists。如果有人可以澄清,那就太棒了。谢谢。
【解决方案2】:

在您的“ls”中,现在显示了“n1”文件。您可以创建一个指向不存在的目录的符号链接,但是您不能“cd”进入它......源目录仍然不存在。 :)

但是,您可以创建一个指向不存在的文件的符号链接,然后通过符号链接编辑该文件。保存时会出现源文件,就像编辑任何新文件一样。

【讨论】:

  • 这篇文章还有更多内容吗?
猜你喜欢
  • 2018-01-11
  • 1970-01-01
  • 1970-01-01
  • 2012-05-14
  • 2013-02-21
  • 1970-01-01
  • 2012-05-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多