有关使用Files.walkFileTree删除符号链接的问题

时间:2013-08-13 14:07:33

标签: java recursion io

从这个java教程here

  

删除文件或目录

     

您可以删除文件,目录或链接。有了符号链接,   链接已删除,而不是链接的目标。有了目录,   目录必须为空,否则删除失败。

另一方面来自here

  

您需要决定是否要遵循符号链接。如果   您正在删除文件,例如,符号链接可能   不可取。如果要复制文件树,则可能需要   允许它。默认情况下,walkFileTree不遵循符号链接。

他们在第二句引文中说If you are deleting files, for example, following symbolic links might not be advisable但在第一句话中,它明确指出:You can delete files, directories or links. With symbolic links, the link is deleted and not the target of the link.

如果它只删除链接而不删除目标,那么在使用Files.walkFileTree时删除时,为什么不建议使用链接?

提前致谢。

1 个答案:

答案 0 :(得分:1)

符号链接的问题在于您不知道它将向您发送的位置。因此,如果您以递归方式删除/etc/home/Rollerball/opt,也许您忘记了有/bin的链接,您忘了考虑。