删除包含符号链接的文件夹
问题描述:
如果我在rm -rf
中有一个软链接的文件夹,它会尝试关注这些链接并删除相应的文件夹,还是只是将它们解除链接?删除包含符号链接的文件夹
我有我的主目录,在它的符号链接的副本,我吓得rm -rf
它的情况下,它遵循这些链接,并炸毁了相应的文件夹...
答
号室射频不会遵循符号链接 - 它只会删除它们。
% mkdir a
% touch a/foo
% mkdir b
% ln -s a b/a
% rm -rf b
% ls a
foo
答
一般来说,rm
不会“删除”。它“取消关联”。这意味着对文件的引用将被rm
删除。当引用数量达到零时,文件将不再可访问,并且及时,它所在的磁盘区域将用于其他内容。
当你rm
一个目录,目录内的东西是取消链接。符号链接是(有点像)文件,其内部的目标名称被删除。要真正找出他们指向的内容,然后取消链接目标是特殊工作,所以不会由通用工具完成。
答
这里是axample:
find a b
a
a/1
a/2
b
ll
drwxr-xr-x 2 ****** ****** 4.0K Feb 6 15:11 a
lrwxrwxrwx 1 ****** ****** 1 Feb 6 15:13 b -> a
。
rm -rf b
给
find a b
a
a/1
a/2
。
rm -rf b/
给出了错误:
rm: cannot remove `b/': Not a directory
结论:
RM不跟随符号连接