我创建了这个文件结构:
test/src
test/firefox
当我运行此命令时:
ln -s test/src test/firefox
我希望test/firefox/src
会创建一个指向的符号链接test/src
,但是却收到此错误:
-bash: cd: src: Too many levels of symbolic links
- 我究竟做错了什么?
- 您是否无法创建指向存储在该文件夹的同级文件夹中的一个文件夹的符号链接?
- 这有什么意义呢?
mkdir测试;mkdir test / src; mkdir test / firefox; ln -s test / src test / firefox
—
David Zorychta 2014年
使用这些命令,
—
吉尔斯2014年
cd test/firefox/src
将显示错误cd: no such file or directory: test/firefox/src
,因为test/firefox/src
是悬空的符号链接。您是否cd
在其他名为的符号链接上运行src
?
我确定您在
—
Dubu 2014年
ln -s
和之间做了一些cd
您不告诉我们的事情。假设test
当前目录中只有一个子目录,则一个cd src
(或您执行的任何内容)都将引发错误。你放东西了test/firefox
吗?
就像@Gilles给出的提示一样,该链接不会执行您认为的操作。具有相对目标的符号链接始终相对于symlink目录,而不是相对于创建链接的目录。所以,在一个目录是
—
Dubu 2014年
/some/path
,一个ln -s test/src test/firefox
将创建一个指向从一个符号链接/some/path/test/firefox/src
来/some/path/test/firefox/test/src
,不来/some/path/test/src
。
ls -ld test test/*
,或发布您创建这些文件所运行的确切命令顺序。