by shigemk2

当面は技術的なことしか書かない

sed

特定の文字列や文章を置換したり削除したりするコマンド。

shigemk2:~ % echo "1. homuhomu 2. hoge 3. homuhomu" | sed -e "s/homuhomu/madoka/g"
1. madoka 2. hoge 3. madoka
shigemk2:~ % echo "1. homuhomu 2. hoge 3. homuhomu" | sed -e "s/homuhomu/madoka/"
1. madoka 2. hoge 3. homuhomu

パターンスペース…置換、削除する際に、一時的に文字列を保存するための場所
ホールドスペース…パターンスペースのサブとして使われる保存領域
オプション引数gは、パターンスペースの情報をホールドスペースにコピーする。
パターンスペースの情報は使い捨てのようなものなので、gがないとパターンスペースの情報の使用は一回切りになる。
そのため、一度しか置換されない。