我正在嘗試讀取一堆類似的文件並逐個處理它們。這是我的代碼。但不知何故perl腳本不能正確讀入文件。我不知道如何解決它。這些文件絕對是我可讀寫的。perl:canot打開循環內的文件
#!/usr/bin/perl
use strict;
use warnings;
my @olap_f = `ls /full_dir_to_file/*txt`;
foreach my $file (@olap_f){
my %traits_h;
open(IN,'<',$file) || die "cannot open $file";
while(<IN>){
chomp;
my @array = split /\t/;
my $trait = $array[4];
$traits_h{$trait} ++;
}
close IN;
}
當我運行它,錯誤消息(類似下面)出現了:
cannot open /full_dir_to_file/a.txt
不使用'ls',爲什麼不使用'glob'?它正確地擴展了'〜'的路徑。 – tadman
'使用Data :: Dumper; $ Data :: Dumper :: Useqq = 1;打印Dumper \ @olap_f;'會告訴你到底發生了什麼事。 – ThisSuitIsBlackNot
我不知道glob和Data :: Dumper。感謝您的建議。 – olala