区切り文字は'/'がよく使用されているが,'s'の次の文字が区切り文字を意味するため任意に指定できる.
例えば以下は同じことを意味する.
$ sed -i -e 's/before/after/' <file>
$ sed -i -e 's@before@after@' <file>
以下のような内容のtext.txtを用意する.
before before before beforebefore beforebeforebeforebefore
$ sed -e 's@before@after@' text.txt
after after before afterbefore afterbeforebeforebefore
'g'を指定しない場合は,行中に一致する最初の文字の置換をするが,'g'を指定した場合はその行すべてに適用することを意味する.
$ sed -e 's/before/after/g' text.txt
after after after afterafter afterafterafterafter
$ sed -e "$((`sed -n '/before before/=' text.txt` ))i\Inserted" text.txt
before Inserted before before beforebefore beforebeforebeforebefore
$ sed -e "$((`sed -n '/before before/=' text.txt` ))i\Inserted" text.txt
before before before Inserted beforebefore beforebeforebeforebefore
$ sed -e "s/^/inserted/" text.txt
insertedbefore insertedbefore before insertedbeforebefore insertedbeforebeforebeforebefore
特定の文字を含む行の場合,
$ sed -e'/before before/s/^/insert/g' text.txt
before insertbefore before beforebefore beforebeforebeforebefore
$ sed -e "s/\$/text/" text.txt
beforetext before beforetext beforebeforetext beforebeforebeforebeforetext
特定の文字を含む行の場合,
$ sed -e'/before before/s/$/insert/g' text.txt
before before beforeinsert beforebefore beforebeforebeforebefore