sed コマンド スクリプトファイルの実行 スクリプトの書き方

バイオインフォ道場、くまぞうです。

sedはテキスト編集ツールとして有名なツールの1つです。フィルタリングや置換処理を行うときに使います。

スポンサーリンク



sedの書き方

コマンドライン中で簡単なフィルタリングを行ったり、コマンドをまとめてスクリプトファイルとして活用したりすることができます。

コマンドラインで使う

他のコマンドの出力結果をsedコマンドにパイプで接続することで、フィルタリングや置換処理を行うことができます。

sedコマンド – コマンドライン

$ echo "hello world" | sed 's/hello/HELLO/'    # 部分文字列を大文字へ変換
HELLO world

$ echo "hello world" | sed 's/.*\(. .\).*/\1/' # 空白の前後の文字を抽出
o w

スクリプトファイルとして使う

sedのコマンド部分をスクリプトファイルとして準備し、-fオプションでファイルを指定します。尚、ファイルに複数のコマンドを続けて記述すると、連続でsedコマンドを実行したのと同じになります。sedコマンドを複数実行する場合は、各コマンドに-eオプションをつけます。

script1.sed

s/hello/HELLO/
$ echo "hello world" | sed -f script1.sed
HELLO

script2.sed

s/hello/HELLO/
s/.*\(. .\).*/\1/
$ echo "hello world" | sed -e 's/hello/HELLO/' -e 's/.*\(. .\).*/\1/'
O w

$ echo "hello world" | sed -f script2.sed  # sedコマンド2回連続と同じ
O w
スポンサーリンク