Would this satisfy your desired output?
my @ins = @ARGV;
foreach(@ins) {
open IN, $_;
my $fn = $_;
while(<IN>) {
chomp;
print "$fn\n";
}
close IN;
}
Johnny Roche
Associate, Help Desk
Harvard Management Company
Tel: 617-720-6827
Fax: 617-878-6827
Email: [email protected]
-----Original Message-----
From: Shawn H Corey [mailto:[email protected]]
Sent: Friday, December 03, 2010 11:16 AM
To: Odin Liu; [email protected]
Subject: Re: A strange problem with array outside I/O
On 10-12-03 11:12 AM, Odin Liu wrote:
> Still confusing. We know that inner loop's $_ overwrite the outer loop's
> $_ only in the inner loop. When the inner loop was over, the $_ would be
> it was in outer loop before the inner loop begin. Outer $_ would be
> restored by Perl automatically.
>
> But why this behavior changes when the inner loop is a diamond
> operation? If it is a Perl syntax, then how can I open a list of file,
> read their content, and then keep the file name list as it was?
No, the behaviour is different because the inner loop is a while one. A
local copy of $_ would be made if the inner loop was another foreach one.
--
Just my 0.00000002 million dollars worth,
Shawn
Programming is as much about organization and communication
as it is about coding.
The secret to great software: Fail early & often.
Eliminate software piracy: use only FLOSS.
--
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
http://learn.perl.org/
The information contained in this e-mail may be confidential and is intended
solely for the use of the named addressee.
Access, copying or re-use of the e-mail or any information contained therein by
any other person is not authorized.
If you are not the intended recipient please notify us immediately by returning
the e-mail to the originator.
--
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
http://learn.perl.org/