Sed is a powerful stream editor. Sed copies its input to its output, editing it in passing. Each portion of an input line matching a regular expression can be replaced with a fixed string or another portion of the input. Lines matching a regular expression can be deleted. GNU sed understands Unicode.
UsageThe following example shows a typical, and the most common, use of sed,
where the -e option indicates that the sed expression follows:
sed -e 's/oldstuff/newstuff/g' inputFileName > outputFileName
Under Unix, sed is often used as a filter in a pipeline:
generate_data | sed -e 's/x/y/g'
That is, generate the data, and then make the small change of
replacing x with y.
Several substitutions or other commands can be put together in a file.
sed -f subst.sed inputFileName > outputFileName
Besides substitution, other forms of simple processing are possible.
For example, the following uses the d command to delete lines that
are either blank or only contain spaces:
sed -e '/^ *$/d' inputFileName
- The caret (
^) matches the beginning of the line.
- The dollar sign (
$) matches the end of the line.
- The asterisk (
*) matches zero or more occurrences of the previous character.
To delete a line containing a specific word from the file use:
sed '/yourword/d' yourfile
To delete only the word use:
sed 's/yourword//g' yourfile