SED examples

Published: Sunday, 28 October 2007
Last modified: Saturday, 9 May 2015

Using back references to append text to each line

To appending the string EXTRA TEXT to each line

sed -e 's/\(.*\)/\1EXTRA TEXT/'

Note the backslash before the brackets.

\1 is the back reference to the first group (only 1 group in this case, which has matched the whole line).

Delete all occurrences of 4 consecutive digits

sed -e 's/[0-9]\{4\}//g'

Switch or swap 2 words around

sed -e 's/\(.*\)\s\(.*\)/\2 \1/'

Extended regular expressions

Use the -r switch to turn on extended regular expression. This allows you to use symbols such as ? for zero or one match.

$ echo abcd | sed -e 's/ab?//'
abcd
$ echo abcd | sed -r -e 's/ab?//'
cd

Links

SED one liners