I am trying to in-place edit a bunch of text files using Perl\'s in-place edit operator $^I. I traverse through the directory using the diamond (<>) operator like this:>
My usual approach for this is to process the arguments and save the files off in a temporary list, then stuff them back into @ARGV.
my @files;
foreach (@ARGV) {
... do something with each parm
else {
push @files,$_;
}
}
@ARGV=@files;
while (<>) {
...
Usually, in the foreach (@ARGV) I will do something like
if (-f) {
push @files,$_;
next;
}