1
0
Fork 0
mirror of https://github.com/tldr-pages/tldr.git synced 2025-04-29 23:24:55 +02:00
tldr/pages/common/sed.md

40 lines
1.1 KiB
Markdown
Raw Normal View History

2013-12-11 21:50:11 +11:00
# sed
> Edit text in a scriptable manner.
2013-12-11 21:50:11 +11:00
- Replace the first occurrence of a regular expression in each line of a file, and print the result:
2013-12-11 21:50:11 +11:00
`sed 's/{{regex}}/{{replace}}/' {{filename}}`
2013-12-11 21:50:11 +11:00
- Replace all occurrences of an extended regular expression in a file, and print the result:
`sed -r 's/{{regex}}/{{replace}}/g' {{filename}}`
2016-01-21 13:02:00 +01:00
- Replace all occurrences of a string in a file, overwriting the file (i.e. in-place):
2013-12-11 21:50:11 +11:00
2015-11-23 16:05:25 +01:00
`sed -i 's/{{find}}/{{replace}}/g' {{filename}}`
2013-12-11 21:50:11 +11:00
- Replace only on lines matching the line pattern:
2013-12-11 21:50:11 +11:00
`sed '/{{line_pattern}}/s/{{find}}/{{replace}}/' {{filename}}`
- Delete lines matching the line pattern:
`sed '/{{line_pattern}}/d' {{filename}}`
- Print only text between n-th line till the next empty line:
2019-04-09 00:49:58 +02:00
`sed -n '{{n}},/^$/p' {{filename}}`
2016-01-21 13:02:00 +01:00
- Apply multiple find-replace expressions to a file:
2014-05-18 01:12:37 +03:00
`sed -e 's/{{find}}/{{replace}}/' -e 's/{{find}}/{{replace}}/' {{filename}}`
- Replace separator / by any other character not used in the find or replace patterns, e.g., #:
`sed 's#{{find}}#{{replace}}#' {{filename}}`
2018-08-22 17:26:12 -04:00
2019-04-09 00:49:58 +02:00
- Print only the n-th line of a file:
2018-08-22 17:26:12 -04:00
2019-04-09 00:49:58 +02:00
`sed '{{n}}q;d' {{filename}}`