Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:
I have a file 'A' which contains n lines of single word strings like
hye bye bin . . n
Now I want to look for these words in some other file 'B' and delete those lines wherever they are found and write the new file as 'C'
Till now I am trying to use this..
#!/usr/local/bin/perl foreach $file (@ARGV) { # open a file and assign the filehandle F open(F, $file) or die("can't open myfile.txt: $!\n"); # read in the whole file into an array of lines @lines = (); while(<F>) { push(@lines, $_); } close(F); # close the filehandle foreach (@lines) { my $string = "@lines"; open(my $infile,"<", file1) or die $!; open (my $outfile,">>", file2) or die $!; while (<$infile>) { if ($_ !~/$string/) { print $outfile $_; } } close $infile; close $outfile; } }
But its giving me error and also not giving results.
Please help !!!
20070313 Janitored by Corion: Added formatting, code tags, as per Writeup Formatting Tips
Back to
Seekers of Perl Wisdom