sed(stream editor)は、LinuxやUnix系オペレーティングシステムで使用される強力なテキストストリームエディタです。このコマンドを使用することで、テキストファイルの内容を読み込み、特定のパターンに基づいてテキストを検索、置換、追加、削除することができます。スクリプト内やターミナルから直接実行することで、テキスト処理の自動化に非常に便利です。
sedコマンドの基本的な使い方
sedの最も基本的な使い方は、sed 's/検索パターン/置換文字列/' ファイル名
です。これは、指定されたファイル内の検索パターン
を置換文字列
に置換します。
sed 's/apple/orange/' fruits.txt
このコマンドはfruits.txt
ファイル内のapple
をorange
に置換します。ただし、この操作はファイルには保存されず、結果は標準出力に表示されます。
sedコマンドの主要なオプション
-i
:ファイルを直接編集し、変更をファイルに保存します。-e
:複数のコマンドを実行する際に使用します。-n
:自動的に出力されるすべてのテキストの出力を抑制し、特定のコマンドで指定されたテキストのみを出力します。
sed -i 's/apple/orange/' fruits.txt
このコマンドはfruits.txt
ファイル内のapple
をorange
に置換し、変更をファイルに直接保存します。
sedコマンドの応用
sedはその強力なテキスト処理能力により、多くの応用が可能です。
テキストファイルから行を削除する
sed '2d' fruits.txt
これはfruits.txt
ファイルの2行目を削除します。ただし、変更はファイルに保存されません。
行の範囲を指定してテキストを置換する
sed '2,4s/apple/orange/' fruits.txt
このコマンドは2行目から4行目までのapple
をorange
に置換します。
ファイル内のすべてのインスタンスを置換する
sed 's/apple/orange/g' fruits.txt
g
オプションを使用すると、ファイル内のすべてのapple
がorange
に置換されます。
まとめ
sedコマンドはLinuxのテキスト処理における強力なツールです。基本的な置換から複雑なテキスト操作まで、多岐にわたる用途に対応できます。このコマンドをマスターすることで、Linux上でのテキスト処理の効率を大幅に向上させることができます。
コメント