我想要做的就是从文件中的目录列表中读取并列出目录中的文件。问题是目录路径中有空格,所以这不起作用:
#!/usr/bin/perl
use File::Spec;
open DIRNAMES, "<./dirnames";
while(my $dirname=<DIRNAMES>) {
opendir DIR,$dirname or die $!;
while (my $file = readdir(DIR)) {
# Use a regular expression to ignore files beginning with a period
next if ($file =~ m/^\./);
print "$file\n";
}
closedir(DIR);
}
exit 0;
第6行似乎没有任何作用; $ dirname不起作用,另一个&#34; $ dirname&#34;,也不是$&#34; dirname&#34;
答案 0 :(得分:1)
您忘记删除在$dirname
放置的行末尾的换行符。只需添加
chomp($dirname);