i have a folder called 'error' and in that, i have error log
files which are generated by the build,
now i want to findout the string 'error' from each log
file and that error has to be copied into the another file
called 'analysis'.
how do you do this in perl?
Answers were Sorted based on User's Feedback
Answer / vipul dalwala
# Correction to my above post
$infile = 'errorlog.txt';
$outfile = 'analysys.txt';
open(INFILE,"$infile") || die "Unable to Open $infile-$!";
open(OUTFILE,">$outfile") || die "Unable to Open $outfile-
$!";
while ( <INFILE> ) {
print OUTFILE $_ if (/error/);
}
close INFILE;
close OUTFILE;
| Is This Answer Correct ? | 6 Yes | 1 No |
Answer / prabhakaran m
## Go to that Directory
my $file_output = "output";
open(OUTFILEHANDLE,">$file_output") || die "Unable to open
the file : $file_output";
foreach my $input_file (`ls -1`) {
open(INFILEHANDLE,"$input_file") || die "Unable to
open the file : $input_file";
while (<INFILEHANDLE>) {
print OUTFILEHANDLE $_ if (/print header/);
}
}
| Is This Answer Correct ? | 4 Yes | 0 No |
Answer / jyothsna
grep error ~/error/errorlog.txt >> ~/main/analysis.txt
| Is This Answer Correct ? | 4 Yes | 1 No |
Answer / prabhath kota
We can do it in a simple way through command line with the
use of grep functionality without writing a program for that.
Suppose your log files(err.log, err_others.log, ......) are
present in "logs" folder.
1) Go to that path first
2) logs]# grep -ir 'error' . > result.txt
(-i for ignore case, -r for recursive search)
3) Observe that, it will grep all the places where ever
'error' is present and keep it in result.txt
4) If you just want the file names alone which contains 'error'
logs]# grep -irl 'error' . > result.txt
(-i for ignore case, -r for recursive search,
-l for listing the files)
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / vipul dalwala
$infile = 'errorlog.txt';
$outfile = 'analysys.txt';
open(INFILE,$infile) || die "Unable to Open $infile-$!";
open(OUTFILE,$outfile) || die "Unable to Open $outfile-$!";
while ( <INFILE> ) {
print OUTFILE $_ if (/error/);
}
close INFILE;
close OUTFILE;
| Is This Answer Correct ? | 2 Yes | 2 No |
my @array=('data1','data2'); my @array1=('data1','data2'); my ($i,$k); $i=7; $k=7; while($i){ $array [++$#array] = 'ree'; $i--; print "@array"; } while($k){ push(@array1,'ree'); $k--; print "@array1"; } Are these two while loop are doing the same functionality ? What may be the difference?
what are the two ways to get private values inside a subroutine or block?
what are steps to do to lock the sony ericsson mobile with password?
How to merge two arrays in perl?
What is the difference between having a parenthesis after module name and without parenthsis after module name?? i.e Package::Module(); and Package::Module;
What is the purpose of _package_ literal?
How to access parameters passed to a subroutine in perl?
How to open a directory in perl?
What does next statement do in perl?
Can any1 tell me 2 write the script using perl script 2 looking at a log file 2 see wheather the test has passed or not.
Why do you program in Perl?
Which statement has an initialization, condition check and increment expressions in its body? Write a syntax to use that statement.