I liked your approach. I'm not sure you need the sub in it
though; you're already doing variable interpolation
when you
open( OUT, ">$outfile" ) or die ...
so you could lean it up a bit:
open( OUT, ">${_}_distilled" ) or die ...
Here's what your code inspired me to do
#!/usr/bin/perl for(glob '*') { /^$0$/ and next; # don't process the script open(I,"<$_") or die("$_: $!"); open(O,">$_.$$") or die("$_: $!"); print O $_,"\n"; { $. > 4 ? last : print O while(<I>); } close(I); } exit;
While writing and subsequently edting above program I discov-
ered the redundancy of local() in certain contexts. I originally wrote
{ local $_ = undef; $. > 4 ? last : print O while(<I>) }
RRedundancy bad, so local went away.
Update: changed >$outfile_distilled
to ${_}_distilled which actually makes sense
in the context of the original program.
In reply to Re: Re: Extract lines and output...
by belden
in thread Extract lines and output...
by airblaine
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |