rizzler has asked for the wisdom of the Perl Monks concerning the following question:
Hi monks,
I have a new problem I cant resolve, I found a nice piece of code on the internet and if I use it in its own small script it works well. The script just adds a header to an already created file. Unfortunately when I use it as part of my larger script I have an issue as @ARGV is used and in my larger script, I actually pass in some arguments. Is there a way to rewrite it so that @ARGV is not used
#/usr/bin/perl use strict; use warnings; sub addheader{ my($infile,$header)=@_; my $text = do { local( @ARGV, $/ ) = $infile ; <> } ; open(FILE,">$infile"); print FILE $header; print FILE $text; close FILE; } my $migfile = "SUBSCRPT_DATA_20121029_11001.DAT"; my $header= "44,,,2\n"; &addheader($migfile,$header);
The following line just hangs when I run the code in my larger script:
my $text = do { local( @ARGV, $/ ) = $infile ; <> } ;As always, your help is much appreciated
Cheers,
Rizz
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: unwanted ARGV in subroutine
by choroba (Cardinal) on Oct 29, 2012 at 21:48 UTC | |
by runrig (Abbot) on Oct 29, 2012 at 22:19 UTC | |
by perl_walker (Novice) on Oct 30, 2012 at 07:06 UTC | |
by Anonymous Monk on Oct 30, 2012 at 07:10 UTC | |
Re: unwanted ARGV in subroutine
by rizzler (Novice) on Oct 30, 2012 at 08:43 UTC | |
by Anonymous Monk on Oct 30, 2012 at 08:55 UTC |
Back to
Seekers of Perl Wisdom