程序应该遵循符号链接吗?

程序应该遵循符号链接吗?

递归遍历目录树的程序需要弄清楚如何处理符号链接(和/或 Windows 上的连接点),以避免在符号链接指向父目录时陷入无限循环。两个明显的选择是:

  1. 完全跳过符号链接。

  2. 继续并跟随它们,但要跟踪所有访问过的目录,并在即将陷入无限循环时跳过。

哪一个是最常见/预期/首选的选择?

答案1

如果您只是浏览,请关注。

但是,您指定您不想要无限循环......

避免在符号链接指向父目录时陷入无限循环

如果您以广度优先的方式进行递归搜索,请遵循。如果以深度优先的方式进行递归搜索,请跳过。

如果您正在计算文件大小,请跳过。

跟踪通常是一种优化,而不是实现。当然,你最好有它。

相关内容