2011年12月31日土曜日

sedコマンド(ストリームエディタ)

sedコマンドは標準入力からのストリームを編集して標準出力へ渡すそうです。
ファイルの内容を置き換えるなど編集して出力できるとのこと。

sed 's/str1/str2/g' file1 でfile1の中の文字列str1をすべてstr2に置き換える。
' 'の中にコマンドを書く。
sは置き換え、gは最初にマッチした文字列だけでなくすべての文字列を置き換える。(substitute)
/パターン/のように/ /の中にパターンを書く。


sed '1,5d' file1 でfile1の1~5行目を削除する。
つまり、1,5が行数の開始と終わりを表して、dが削除を意味する。

教科書にはコマンドは4つほどしか掲載されていないが、ITproの記事には教科書にはないコマンドがたくさん載っていた。

ビデオでもsedコマンドは奥が深いと言っていたので、試験でどこまで問われるかが心配だ。