Bir cmd'nin çıktısını çıktıya bir desen için grep yazmaya çalışıyorum ve eğer varsa bir diziye itin. Ben bir dosyaya çıktı yazılı sorunla karşı karşıya amYazma ve okuma için Perl dosya işleyicisi
dosya işleyicisi kullanımı olmadan, diziler sonra bir dosya işleyicisi içinde aynı kodu yerleştirirseniz, ince ve baskılar çıktı üretmesi
my $output = `cmd to get output`;
print "output is : $output\n";
çalışır Ama Kanunu altında onun bile kod bile alıyorum hayranlarıyla çıkış sadece $VAR1 = [];
output is :
use warnings;
use strict;
use Data::Dumper;
foreach my $cfg_file (@cfg_files){
#open the file handler for both read and write mode
open my $fh1, '+>', 'c:\TEMP\cfg.txt' or die $!;
while (<$fh1>) {
my $output = `cmd to get output using $cfg_file`;
print "output is : $output\n";
print $fh1 $output; #write the output into file
if (/$pattern/) { #read the file for a specific pattern
print "$_";
push(@matching_lines, $_);
}
}
}
print Dumper(\@matching_lines);
kodlanmış kelime baskı yapmadığı
Gerçekten de kullanmadığınız @ @ cfg_files' üzerindeki döngüde ne anlama geliyor? Okumak istediğin dosyalar bunlar mı? –
Bir * dosya tanıtıcısı * değil, * dosya tanıtıcısı * denir. Bir şeye tutunmanıza, bir şeyle başa çıkmanıza izin vermez. – ikegami