我的目录中有许多文件/etc/rc3.d/
,它们都是符号链接,并/etc/init.d/
使用指定指向目录中的文件../init.d/
。例如,目录S18rsyslog
中的文件/etc/rc3.d/
是指向文件的符号链接/etc/init.d/rsyslog
,但根据ls -l
,/etc/rc3.d/S18rsyslog
并不指向/etc/init.d/rsyslog
而是../init.d/rsyslog
:
# ls -l /etc/rc3.d/S18rsyslog
lrwxrwxrwx 1 root root 17 30. jun 15:05 /etc/rc3.d/S18rsyslog -> ../init.d/rsyslog
#
保留相对于目录的符号链接有什么好处?因为这允许人们在不破坏符号链接的情况下移动 direcoty 本身?另外,是否可以..
在路径中创建与(父目录)的符号链接而不在目录中?ln -sv '/etc/init.d/rsyslog' '/etc/rc3.d/../init.d/rsyslog'
显然不起作用,因为符号链接被创建到/etc/init.d/
目录中,而我想../init.d/rsyslog
在/etc/rc3.d/
目录中命名符号链接。
答案1
保留相对于目录的符号链接有什么好处?因为这允许人们在不破坏符号链接的情况下移动 direcoty 本身?
确切地。
另外,是否可以
..
在路径中创建与(父目录)的符号链接而不在目录中?ln -sv '/etc/init.d/rsyslog' '/etc/rc3.d/../init.d/rsyslog'
显然不起作用,因为符号链接被创建到/etc/init.d/
目录中,而我想../init.d/rsyslog
在/etc/rc3.d/
目录中命名符号链接。
所以你的意思是表达ln -s ../init.d/rsyslog /etc/rc3.d
为了不忽视符号链接,最好记住它ln
的语义ln TARGET LINK
,并且符号链接本质上是 LINK 处包含 TARGET 的文件;如果 TARGET 是相对路径名,则 TARGET 替换相对于其包含目录的符号链接。因此,ln -s X/Y A/B/
变为A/B/X/Y
.