删除混合有符号链接和子目录的目录是否安全?

删除混合有符号链接和子目录的目录是否安全?

我有一个目录,dir.里面dir有符号链接和常规子目录。我想删除dir并创建一个符号链接以dir指向另一个目录。

如果我只是这样做rm -rf dir,我相信这应该会删除其中的所有子目录和符号链接dir,但是当其中有符号链接时这样做是否安全dir

答案1

是的,使用 删除目录及其内容是安全的rm -rf dir。该操作不会遵循符号链接,因此不会删除位于dir. POSIX 规范rm 具体来说关于递归操作提到了这一点:

rm实用程序不得通过跟随符号链接进入层次结构的其他部分来遍历目录,而应删除链接本身。

如果dir它本身是一个符号链接(你说它是一个目录,所以这可能不适用于你的情况),那么该符号链接将被删除,但不会删除它指向的东西。请注意,在这种情况下,rm -rf dir/(添加最后一个斜杠)将取消引用符号链接并删除该链接指向的目录,而符号链接将保留。

相关内容