我正在使用file::find
來遍歷目錄結構並將其打印出來,但我在排除隱藏文件時遇到了問題。以下是我迄今爲止:使用File :: Find忽略隱藏文件
find(\&todo, $start_dir);
sub todo
{
if ($_ =~ /^./)
{
print "hidden file $_\n";
}
else
{
if (-f $_) #check for file
{
file;
}
elsif (-d $_) #check for directory
{
directory($File::Find::dir);
}
else
{
print "ERROR: $_\n";
}
}
}
如果我刪除if ($_ =~ /^./)
檢查,文件和目錄做工精細,但加入這個打印一切爲隱藏文件。正如你所看到的,我只需要這個在unix上工作。 任何人都可以指向正確的方向嗎?
編輯:我忘了在前面的一個反斜槓。 - 應該是if($ _ =〜/^./),但是find()有一個忽略隱藏文件/目錄的默認方式? 謝謝!
這結束了工作: 如果((($ _ =〜/^\./)|| ($ File :: Find :: dir =〜m /[.]/))) –