ブログのサムネイル作成方法(プラグイン)
thatisgraffiti
Graffiti-Life
sedコマンドを利用する傍ら、そもそも変換コマンドだったっけ?と疑問に抱き、今回は勉強してみます。
sedコマンドは「stream editor(ストリームエディタ)」の略で、テキストファイルや標準入力からのデータを、指定したルールに基づいて自動的に編集・加工するための強力なテキスト処理ユーティリティです。主にテキストの検索・置換・挿入・削除などの操作を自動化するために広く利用されているそうです。
sed [オプション] 'スクリプト' [ファイル名]-iオプションでファイルを直接編集可能(バックアップも作成可)。ファイル内の「oldstring」を「newstring」にすべて置換する例です。
sed 's/oldstring/newstring/g' file.txtsはsubstitute(置換)の意味gはglobal(行内すべて)を指定パターン一致行の削除
sed '/pattern_to_delete/d' file.txt2行目の削除
sed '2d' file.txt加工結果を新しいファイルに保存
sed 's/old/new/g' oldfile.txt > newfile.txtsed '3i\This is the inserted text.' file.txtsed '$a\This is the appended text.' file.txt特定パターンに一致する行を新しいテキストで置換
sed '/pattern_to_match/c\New line of text' file.txt| オプション | 説明 |
|---|---|
| -e | 複数のコマンドを順に実行 |
| -i | ファイルを直接編集(インプレース編集) |
| -n | 出力を抑制し、pコマンドで指定した行のみ出力 |
例:
sed -i 's/old/new/g' filename
sed -n 'p' filename
sedコマンドは、LinuxやUnix環境でのテキスト処理を効率化するための必須ツールです。
検索・置換だけでなく、行の削除や挿入、スクリプトによる複雑な編集も自動化できるため、日々の作業やシェルスクリプト作成に非常に役立くはずです。