![]() |
1
7
有一个 Graph CPAN上的模块,您可以使用它,如下所示:
例如,在与问题目录结构类似的目录中,输出是 $ ../has-cycle ../has-cycle: .: at least one cycle: c -> a -> b |
![]() |
2
2
看一下CPAN模块 File::Spec::Link .resolve方法表示它反复遍历一个链接以查找链接的目标。 模块的解析方法如下:
我用这个模块找到了一个符号链接的目标,它的目标依次是符号链接等等。但我不确定这是否检测到循环符号链接。 |
![]() |
3
-1
您需要存储的不仅仅是链接的名称。要么抓取inode编号(如果您的fs支持它),要么抓取其他一些独特的方面。如果一个不存在,那么考虑创建您自己的,可能通过校验名/创建/上次修改日期。无论哪种方式,您都需要某种方法来唯一地标识每个链接。我见过一些实用程序简单地限制了链接的数量(在8到255之间),并声明任何超过此限制的内容都是循环,但我总是认为这是“廉价的出路”。:) |
|
bsmedley · 为什么cpanm不安装依赖项? 9 年前 |
![]() |
wytten · 无法安装MongoDB perl 10 年前 |
![]() |
Zhengyang Liu · 在Net::SSLeay中安装时出错 11 年前 |
![]() |
WestCoastProjects · 如何安装perl Logger模块 11 年前 |