Shell
sed — find-and-replace and line edits that work in scripts
## Substitute `sed 's/foo/bar/' file` — replace first `foo` per line `sed 's/foo/bar/g' file` — replace all on each line `sed -i 's/foo/bar/g' file` — edit file in place (GNU) `sed -i '' 's/foo/bar/g' file` — edit in place on macOS (empty backup ext) ## Anchors + regex `sed 's/^foo/bar/' file` — only at line start `sed -E 's/[0-9]+/N/g' file` — extended regex ## Print specific lines `sed -n '5p' file` — print line 5 `sed -n '10,20p' file` — print lines 10-20 `sed -n '/pattern/p' file` — print matching lines ## Delete lines `sed '/^$/d' file` — remove blank lines `sed '/^#/d' file` — remove comment lines `sed '5,10d' file` — delete lines 5-10 ## Multiple expressions `sed -e 's/foo/X/' -e 's/bar/Y/' file` — run multiple ## Tip For complex multiline edits, use `awk` or `perl` — sed is for one-line edits.