首先如果我创建了两个不同的目录,如下:
然后为这两个目录创建相同的软连接
ln -s a c
ln -s b c
按照上面顺序创建软连接,为什么会在 a 目录下面创建一个 b 的软链接文件,且指向 b 目录?
并且使用cd命令,进入 a 目录下的链接文件 b 时,为什么会出现下面的错误?
首先如果我创建了两个不同的目录,如下:
然后为这两个目录创建相同的软连接
ln -s a c
ln -s b c
按照上面顺序创建软连接,为什么会在 a 目录下面创建一个 b 的软链接文件,且指向 b 目录?
并且使用cd命令,进入 a 目录下的链接文件 b 时,为什么会出现下面的错误?
7 回答5.3k 阅读
4 回答4k 阅读
2 回答5.9k 阅读✓ 已解决
2 回答2.5k 阅读✓ 已解决
1 回答2.3k 阅读✓ 已解决
2 回答799 阅读✓ 已解决
2 回答3.2k 阅读
这个其实包括了几个问题
ln -s b c
,展开来说,就就是创建一个 指向b
的符号链接,放置到c
路径(下),因为这里c
指向一个目录,所以相当于 在c
路径下,创建一个指向b
的符号链接,符号链接的文件名还是b
,如果a
原来是一个普遍文件,则ln -s b c
会报错。c
或者a
发现b
的指向是无效的,则是因为这里b
是以相对路径指向了./b
这个具体的文件,但实际上在c
或者a
下是没有b
的。如果 这里ln -s b c
改为ln -s <b的全路径> c
, 则会一直能访问。