====== sed ====== 区切り文字は'/'がよく使用されているが,'s'の次の文字が区切り文字を意味するため任意に指定できる. \\ 例えば以下は同じことを意味する. $ sed -i -e 's/before/after/'  $ sed -i -e 's@before@after@' ====== 例題 ====== 以下のような内容のtext.txtを用意する. before before before beforebefore beforebeforebeforebefore ===== 区切り文字を'@' ===== $ sed -e 's@before@after@' text.txt after after before afterbefore afterbeforebeforebefore ===== gを追加 ===== '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