#/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);