my @array = do { local @ARGV = $name; <> };
####
#!/usr/bin/perl -w
use strict;
my $name = "file_b";
my ($foo1, $foo2, $foo3);
$foo1 = <>;
$foo2= <>;
my @lines= do { local *ARGV; @ARGV =$name;<> };
$foo3 = <>;
print "Lines:\n",@lines;
print "\nFoos:\n",$foo1,$foo2,$foo3;
####
#!/usr/bin/perl -w
use strict;
my $name = "file_b";
my ($foo1, $foo2, $foo3);
$foo1 = <>;
$foo2= <>;
my @lines= do { local @ARGV =$name;<> };
$foo3 = <>;
print "Lines:\n",@lines;
print "\nFoos:\n",$foo1,$foo2,$foo3;
####
% perl test.pl file_a
Lines:
Foos:
File A line 1
File A line 2
File A line 3
####
% perl test.pl file_a
Lines:
File A line 3
File A line 4
File A line 5
File A line 6
File A line 7
File A line 8
File A line 9
File A line 10
File B line 1
File B line 2
File B line 3
File B line 4
File B line 5
File B line 6
File B line 7
File B line 8
File B line 9
File B line 10
Foos:
File A line 1
File A line 2
Use of uninitialized value at test.pl line 16.