スポンサーリンク
sedで指定した行の削除をする方法
下記のin.txtを入力として、例を紹介したいと思います。
$ cat in.txt find sed awk ls cat
行番号で指定した行を削除
行番号で指定した行を削除する場合には、下記の形式で実行します。
sed '行番号d' in.txt
例えば、3行目を削除する場合には、下記のように書きます。
$ sed '3d' in.txt
下記が実行結果になります。
$ sed '3d' in.txt find sed ls cat
スポンサーリンク
行番号で範囲指定した行を削除
行番号で範囲指定した行を削除する場合には、下記の形式で実行します。
sed '開始行番号,終了行番号d' in.txt
例えば、2〜4行目を削除する場合には、下記のように書きます。
$ sed '2,4d' in.txt
下記が実行結果になります。
$ sed '2,4d' in.txt find cat
指定した文字列を含む行を削除
指定した文字列を含む行を削除する場合には、下記の形式で実行します。
sed '/指定文字列/d' in.txt
例えば、"in"を含む行を削除する場合には、下記のように書きます。
$ sed '/in/d' in.txt
下記が実行結果になります。
$ sed '/in/d' in.txt sed awk ls cat
正規表現で、行頭の文字を指定して削除
行頭の文字列を指定して削除する場合には、下記の形式で実行します。
$ sed '/^先頭文字列/d' in.txt
例えば、先頭の文字が"a"の行を削除する場合には、下記のように書きます。
正規表現のメタ文字"^"を使います。
$ sed '/^a/d' in.txt
下記が実行結果になります。
$ sed '/^a/d' in.txt find sed ls cat
正規表現で、行末の文字を指定して削除
行末の文字列を指定して削除する場合には、下記の形式で実行します。
$ sed '/行末文字列$/d' in.txt
例えば、先頭の文字が"d"の行を削除する場合には、下記のように書きます。
正規表現のメタ文字"$"を使います。
$ sed '/d$/d' in.txt
下記が実行結果になります。
$ sed '/d$/d' in.txt awk ls cat
スポンサーリンク