_                    _
  ___ | |__   __ _ _______ | |_
 / _ \| '_ \ / _` |_  / _ \| __|
| (_) | | | | (_| |/ / (_) | |_
 \___/|_| |_|\__,_/___\___/ \__|

sedusage and tips

replace old with new : s/old/new/
replace all occurrences : s/old/new/g
replace the second occurrence : s/l/p/2

$ echo "hello" | sed "s/l/p/"
heplo
$ echo "hello" | sed "s/l/p/g"
heppo
$ echo "hello" | sed "s/l/p/2"
helpo

The typical separator is /, which can conflict with pathnames. An option is to use another character as a separtor, eg.: @ :

echo "/some/path" | sed "s/\/some\/path/\/other\/directory/"
echo "/some/path" | sed "s@/some/path@/other/directory@"

back to top

text_manipulation

- OpenBSD manpages: sed(1)

back to top

ohazot | about | ohazot.com <admin@ohazot.com>

OpenBSD 7.7 linux| Created:2025-10-03|Updated:2025-10-21|