perl -p -i.bak -w -e 's/dude/Johnny5/g' myinfo.txt #### LINE: while (<>) { ... # your program goes here } continue { print or die "-p destination: $!\n"; } #### #!/usr/bin/perl -w $extension = '.bak'; LINE: while (<>) { if ($ARGV ne $oldargv) { if ($extension !~ /\*/) { $backup = $ARGV . $extension; } else { ($backup = $extension) =~ s/\*/$ARGV/g; } rename($ARGV, $backup); open(ARGVOUT, ">$ARGV"); select(ARGVOUT); $oldargv = $ARGV; } s/dude/Johnny5/g; } continue { print or die "-p destination: $!\n"; }