use strict; # open in read/write mode open(DATA, "+< a.txt") or die "Cannot read $!"; my @info = ; foreach (@info) { $_ =~ s/NULL//g; $_ =~ s/ //g; } seek(DATA, 0, 0); # rewind back to beginning foreach(@info) { print DATA; } truncate(DATA, tell(DATA)); close(DATA);