#topicpath ////////////////////////////////////////////////////////////////////////////// * 目次 [#kd6a16d0] #contents(); ////////////////////////////////////////////////////////////////////////////// * sed [#vefceb15] - sed の名前は、''s''tream ''ed''itor から来ている。 - 標準入力に対して、テキスト置換編集などの機能を実現する。 - テキスト置換などにおいて、正規表現を受け付ける ////////////////////////////////////////////////////////////////////////////// * 文法 [#n5d56925] //============================================================================ ** s コマンド(置換) [#xad9bd04] sed -e "s/<置換対象パターン>/<置換後の文字列>/" - 上記ではダブルクォートだが、シングルクォートでも良い。 - デリミタとして上記では "/" を使用しているが、"''s''" の直後に続く文字をデリミタとして認識するので、極端な話、入力される文字列ストリームに含まれる可能性のないものであれば、大体何でもいい。~ → 例えば、 ":", "|" など。 - もし、入力が UNIX 系システムのパス名だとすると、それらの文字列には "/" が含まれる。この場合にデリミタを "/" にしておくと誤動作が起こる。正しく動作させるためには ":" などパスに使用される可能性のない文字をデリミタにする必要がある。 //---------------------------------------------------------------------------- *** 実行例 [#c532f443] - 出力結果の各行頭に半角スペースを入れる -- コマンドのログや実行結果を、 pukiwiki に整形済みテキストとして貼ることを事前提に出力させる場合などに使える -- 例 $ <command> | sed -e '/^/ /'