linux sed コマンドは 1 行/複数行を削除します_sed は最初の行を削除します/linux はファイルの特定の行を削除します

sedシリーズの記事

  1. 一般的な Linux コマンド (9): sed コマンド (テキストの編集/置換/削除)
  2. linux sed コマンドは 1 行/複数行を削除します_sed は最初の行を削除します/linux はファイルの特定の行を削除します
  3. Linux sed バッチ変更およびファイル内の内容/sed 特殊文字の置換

この記事では、txt ファイル内の特定の行を削除する方法を主に説明します。sed コマンドの詳細については、「 Linux 共通コマンド (9):」を参照してください。 sed コマンド (編集/置換/削除) テキスト)

1.sedの削除

編集コマンド 意味
1日 1行目の内容を削除
1,5日 1行目から5行目までの内容を削除
2,+5d 2行目以降の5行の内容を削除
/パターン1/d 各行の pattern1 に一致する行の内容を削除します
/パターン1/、/パターン2/d すべての行がパターン 2 に一致するまで、パターン 1 に一致する行を削除します。
/パターン1/,10d pattern1 から 10 行目までに一致するすべての行を削除します
10,/パターン1/d 10行目からpattern1が一致するまでをすべて削除します。

1.1. sed は特定の行の内容を削除/最後の行を削除します

sed -i '1d' filename   删除文件第一行
sed -i '2d' filename   删除第二行
sed -i 'nd' filename   删除第n行/n需要是实际数字
sed -i '$d' filename   删除最后一行

実行結果:
ここに画像の説明を挿入します
指定された行が存在しない場合、その行は削除されません
ここに画像の説明を挿入します

1.2. sed は複数の行を削除します

sed -i '1,3d' filename   删除1-3行
sed -i '3,$d' filename  删除第3行到最后一行

実行効果:
ここに画像の説明を挿入します
ここに画像の説明を挿入します

1.3. すべての空行を削除する

# 删除所有空白行
sed -i '/^$/d' filename

ここに画像の説明を挿入します

1.4. 一致する行を削除する

sed  -i '/某字符串/d'  filename

コマンドの説明:

  • /特定の文字列/ は、 // 中間の文字列を持つ行と一致します。行の先頭と一致するには、次のように ^ を追加します。
    /^+/ は、次のように一致します。行頭の文字列を「+」行として表示
[root@centos test]# cat aa.txt
| 1 | tom ||
| 2 | jack||
| 3 | cary||
| 4 | cody||
[root@centos test]# sed '/男/d' aa.txt  -- 删除有男的行
| 2 | jack||
| 4 | cody||
[root@centos test]# 

1.5. a で始まる行を削除する

删除以a开头的行
sed -i '/^a.*/d' tmp.txt

1.6. 逆削除

# 删除不包含green的行
sed -i '/green/!d'   test.txt

1.7. スペースの削除

删除行首空格 sed  's/^[ \t]*//g'

删除行末空格 sed  's/[ \t]*$//g'

删除所有的空格 sed  's/[[:space:]]//g'
其中,sed 's/^[ ]*//g' 表示使用空字符匹配行首为空格的字符串;
依次拆解释义:     
字符 's' 表示替换;     
字符 '/' 表示作为分隔符;     
字符 '^' 表示开头;     
字符 '$' 表示结尾;     
字符 '[ ]' 表示匹配指定字符范围内的任意单个字符,[ ]包含一个空格;     
字符 '*' 作为通配符,匹配0个或任意多个;     字符 'g’ 表示全部匹配;

2. 拡張

2.1、-iコマンド

-i:直接修改文档读取的内容,不在屏幕上输出

sed は、現在処理中の行をパターンスペースまたは一時バッファーと呼ばれる一時バッファーに保存します。デフォルトでは、sed はファイル内の値を直接変更しませんが、-i を追加するとファイルの内容が直接変更されます。
ここに画像の説明を挿入します





この記事を整理しているときに、学ぶ価値のある他の記事をいくつか見つけました: https://blog.csdn.net/bandaoyu/article/details/120047612

おすすめ

転載: blog.csdn.net/weixin_49114503/article/details/134919650