in reply to Inplace Editing

if the script is not run with -i, you can do this:
{ local ($^I, @ARGV) = ('.bak', @files); while (<>) { s/this/that/; print; } }
It's also useful if you ARE running with -i and wish to use a different extension for the backup file.

Error: Keyboard not attached. Press F1 to continue.