- 论坛徽章:
- 0
|
写了一个perl script, 想找出所有的符号链接文件。比如
dir001----file1
|---file2
|---link1
|---link2
|---dir002----file3
|----link3
|----link4
这个脚本在dir001下run, 就应该找出 link1, link2, link3, link4 文件。原程序如下
#!/usr/bin/perl -s
use Cwd;
sub ScanDirectory{
my ($workdir)=shift;
my($startdir)=&cwd;
chdir($workdir)or die "unable to open $!\n";
opendir(DIR,".")or die "unable to open $!\n";
my @names=readdir(DIR);
closedir(DIR);
foreach my $name(@names){
next if ($name eq ".");
next if($name eq "..");
if(-d $name){
&ScanDirectory($name);
}
if(-l $name){
print "$name\n";
}
chdir($startdir) or die"unable $!\n";
}
}
&ScanDirectory(".");
但是,运行以后发现只能找全当前目录下所有的符号链接文件,子目录下的符号链接文件只能找到第一个。我想不出错在哪里?哪位大仙帮忙看看,谢谢先! |
|