【发布时间】:2014-10-05 05:57:45
【问题描述】:
我正在编写一个 perl 脚本,我正在尝试读取两个差异文件..
第一个文件
open my $data1, "<", "/tmp/CSI_to_PROD_111111_20141004_225038/att_application.properties"
or die "Unable to open prod file";
while (<$data1>) {
chomp();
foreach $line (<$data1>) {
next if ( $line =~ /(^\s*#|^$)/ );
chomp($line);
foreach $token (@csitokens) {
if ( $line =~ /$token=/ ) {
my ( $tok, @val ) = split( /=/, $line, 2 );
print "@val\n";
}
}
}
}
close($data1) or warn "Not able to close fil: \n";
第二个文件
open my $data2, "<", "/opt/app/d1ebl1m5/dv02/cingbt02/J2EEServer/config/AMSS/application/properties/att_application.properties_try"
or die "unable to open file: $!";
while (<$data2>) {
foreach $line1 (<$data2>) {
print "$line1";
}
}
close($data2) or warn "Not able to close fil: \n";
第一个文件的循环工作正常并显示输出,但第二个循环不显示任何内容..
【问题讨论】:
-
同时从文件中读取一行。 Foreach 也是如此。所以你正在跳槽。
标签: perl scripting while-loop