1
我有一個製表符分隔的文本文件,我在其中使用while循環根據某些列值進行了一些篩選。我將輸出寫入一個新文件。現在我想用這個輸出文件作爲另一個while循環的輸入。這是迄今爲止的代碼。有些東西一定是錯的,因爲out2.txt
文件是空的。使用輸出變量作爲perl中的新輸入變量
my $table1 = $ARGV[0];
open(my $file, $table1) || die "$! $table1"; #inputfile
open(my $filter1, '+>', "out.txt") || die "Can't write new file: $!"; #first output
open(my $filter2, '+>', "out2.txt") || die "Can't write new file: $!"; #second output
while (<$file>) {
my @line = split /\t/; #split on tabs
if ($line[12] =~ /one/) {
print $filter1 "$_";
}
}
while (<$filter1>) {
my @line = split /\t/; #split on tabs
if ($line[11] =~ /two/) {
print $filter2 "$_";
}
}
輸出文件out.txt
包含正確的信息。但是out2.txt
是空的。有人可以幫我解決這個問題嗎?