9 ms·
sed -i does the same thing as perl -pi. Though I've not encountered a system that doesn't have both.
by steve-howard 15y ago
sed -i does the same thing as perl -pi. Though I've not encountered a system that doesn't have both.
- Someone 15y agosed's regular expressions are different from those perl uses (even when using the (¿gnu sed?) flag that tells sed to use extended regular expressions). Especially if you "live in perl", that can be a problem.
- michaelcampbell 15y agoDoes sed allow in-place file replacement, or do you need to redirect to a different file then cp/mv it over the original? I haven't used it in many years, but sed didn't used to allow this.
- derwiki 15y agosed -i 's/old/new/g' file
- 1010010101 15y agoNote: "cmds" is one or more s commands. For other commands, if it's a big file, I will just pipe through less (still no temp file) and then save the buffer (to overwrite the original file), instead of using this hack. A hack for in-place editing, for old school sed (no -i): sedi(){ case $# in 0) echo usage: sedi cmds file;; 2) sed -an ' '"$1"'; H; $!d; g; w '"$2"'' $2;; esac; }