さて、これは私が持っているものです:
#!/usr/local/bin/perl
my $argument1 = $ARGV[0];
open (LOGFILE, "<$argument1") or die "Can't find file";
open FILE, ">>output.txt" or die $!;
while(<LOGFILE>){
if (/UNSUCCESSFUL/){
print FILE "ERROR in line $.\n" if (/Error/);
print "script unsuccessful \n";
else:
print "script successful \n"; }
}
close FILE;
close LOGFILE;
問題は、if else ステートメントにあると思います。読み込まれたテキストに「失敗」という単語がない場合は、単に「スクリプトが成功しました」と出力する必要があります。ただし、読み込まれたファイルに「失敗」が含まれている場合は、ファイル内のどこに「エラー」という単語が表示されているかを記録し、これをファイルに書き出す必要があります。ヘルプ?!
サンプル入力:
bar foo bar bar bar
エラー: コンパイルされません
bar bar bar bar bar
試行に失敗しました