use strict; die "Usage: \n" unless @ARGV == 2; my $file_1 = $ARGV[0]; my $file_2 = $ARGV[1]; open (FILE2, $file_2) or die "Couldn't open file: $!"; while () { if ($_ =~ s/^confederation-as-router\:\W+\d\W+\d+\W//) { push(my @file2, $_); #I can print the entire array here. open (FILE3, '>routers') or die "Couldn't open file: $!"; print FILE3 @file2; close FILE3;