偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

如何使用sed命令刪除文件中的行

系統(tǒng) Linux
Sed 代表流編輯器,常用于 Linux 中基本的文本處理。sed 命令是 Linux 中的重要命令之一,在文件處理方面有著重要作用??捎糜趧h除或移動與給定模式匹配的特定行。

[[275181]]

Sed 代表流編輯器Stream Editor,常用于 Linux 中基本的文本處理。sed 命令是 Linux 中的重要命令之一,在文件處理方面有著重要作用??捎糜趧h除或移動與給定模式匹配的特定行。

它還可以刪除文件中的特定行,它能夠從文件中刪除表達式,文件可以通過指定分隔符(例如逗號、制表符或空格)進行標識。

本文列出了 15 個使用范例,它們可以幫助你掌握 sed 命令。

如果你能理解并且記住這些命令,在你需要使用 sed 時,這些命令就能派上用場,幫你節(jié)約很多時間。

注意:為了方便演示,我在執(zhí)行 sed 命令時,不使用 -i 選項(因為這個選項會直接修改文件內(nèi)容),被移除了行的文件內(nèi)容將打印到 Linux 終端。

但是,如果你想在實際環(huán)境中從源文件中刪除行,請在 sed 命令中使用 -i 選項。

演示之前,我創(chuàng)建了 sed-demo.txt 文件,并添加了以下內(nèi)容和相應行號以便更好地理解。

  1. # cat sed-demo.txt
  2.  
  3. 1 Linux Operating System
  4. 2 Unix Operating System
  5. 3 RHEL
  6. 4 Red Hat
  7. 5 Fedora
  8. 6 Arch Linux
  9. 7 CentOS
  10. 8 Debian
  11. 9 Ubuntu
  12. 10 openSUSE

1) 如何刪除文件的第一行?

使用以下語法刪除文件首行。

N 表示文件中的第 N 行,d 選項在 sed 命令中用于刪除一行。

語法:

  1. sed 'Nd' file

使用以下 sed 命令刪除 sed-demo.txt 中的第一行。

  1. # sed '1d' sed-demo.txt
  2.  
  3. 2 Unix Operating System
  4. 3 RHEL
  5. 4 Red Hat
  6. 5 Fedora
  7. 6 Arch Linux
  8. 7 CentOS
  9. 8 Debian
  10. 9 Ubuntu
  11. 10 openSUSE

2) 如何刪除文件的最后一行?

使用以下語法刪除文件最后一行。

$ 符號表示文件的最后一行。

使用以下 sed 命令刪除 sed-demo.txt 中的最后一行。

  1. # sed '$d' sed-demo.txt
  2.  
  3. 1 Linux Operating System
  4. 2 Unix Operating System
  5. 3 RHEL
  6. 4 Red Hat
  7. 5 Fedora
  8. 6 Arch Linux
  9. 7 CentOS
  10. 8 Debian
  11. 9 Ubuntu

3) 如何刪除指定行?

使用以下 sed 命令刪除 sed-demo.txt 中的第 3 行。

  1. # sed '3d' sed-demo.txt
  2.  
  3. 1 Linux Operating System
  4. 2 Unix Operating System
  5. 4 Red Hat
  6. 5 Fedora
  7. 6 Arch Linux
  8. 7 CentOS
  9. 8 Debian
  10. 9 Ubuntu
  11. 10 openSUSE

4) 如何刪除指定范圍內(nèi)的行?

使用以下 sed 命令刪除 sed-demo.txt 中的第 5 到 7 行。

  1. # sed '5,7d' sed-demo.txt
  2.  
  3. 1 Linux Operating System
  4. 2 Unix Operating System
  5. 3 RHEL
  6. 4 Red Hat
  7. 8 Debian
  8. 9 Ubuntu
  9. 10 openSUSE

5) 如何刪除多行內(nèi)容?

sed 命令能夠刪除給定行的集合。

本例中,下面的 sed 命令刪除了第 1 行、第 5 行、第 9 行和最后一行。

  1. # sed '1d;5d;9d;$d' sed-demo.txt
  2.  
  3. 2 Unix Operating System
  4. 3 RHEL
  5. 4 Red Hat
  6. 6 Arch Linux
  7. 7 CentOS
  8. 8 Debian

5a) 如何刪除指定范圍以外的行?

使用以下 sed 命令刪除 sed-demo.txt 中第 3 到 6 行范圍以外的所有行。

  1. # sed '3,6!d' sed-demo.txt
  2.  
  3. 3 RHEL
  4. 4 Red Hat
  5. 5 Fedora
  6. 6 Arch Linux

6) 如何刪除空行?

使用以下 sed 命令刪除 sed-demo.txt 中的空行。

  1. # sed '/^$/d' sed-demo.txt
  2.  
  3. 1 Linux Operating System
  4. 2 Unix Operating System
  5. 3 RHEL
  6. 4 Red Hat
  7. 5 Fedora
  8. 6 Arch Linux
  9. 7 CentOS
  10. 8 Debian
  11. 9 Ubuntu
  12. 10 openSUSE

7) 如何刪除包含某個模式的行?

使用以下 sed 命令刪除 sed-demo.txt 中匹配到 System 模式的行。

  1. # sed '/System/d' sed-demo.txt
  2.  
  3. 3 RHEL
  4. 4 Red Hat
  5. 5 Fedora
  6. 6 Arch Linux
  7. 7 CentOS
  8. 8 Debian
  9. 9 Ubuntu
  10. 10 openSUSE

8) 如何刪除包含字符串集合中某個字符串的行?

使用以下 sed 命令刪除 sed-demo.txt 中匹配到 SystemLinux 表達式的行。

  1. # sed '/System\|Linux/d' sed-demo.txt
  2.  
  3. 3 RHEL
  4. 4 Red Hat
  5. 5 Fedora
  6. 7 CentOS
  7. 8 Debian
  8. 9 Ubuntu
  9. 10 openSUSE

9) 如何刪除以指定字符開頭的行?

為了測試,我創(chuàng)建了 sed-demo-1.txt 文件,并添加了以下內(nèi)容。

  1. # cat sed-demo-1.txt
  2.  
  3. Linux Operating System
  4. Unix Operating System
  5. RHEL
  6. Red Hat
  7. Fedora
  8. debian
  9. ubuntu
  10. Arch Linux - 1
  11. 2 - Manjaro
  12. 3 4 5 6

使用以下 sed 命令刪除以 R 字符開頭的所有行。

  1. # sed '/^R/d' sed-demo-1.txt
  2.  
  3. Linux Operating System
  4. Unix Operating System
  5. Fedora
  6. debian
  7. ubuntu
  8. Arch Linux - 1
  9. 2 - Manjaro
  10. 3 4 5 6

使用以下 sed 命令刪除 R 或者 F 字符開頭的所有行。

  1. # sed '/^[RF]/d' sed-demo-1.txt
  2.  
  3. Linux Operating System
  4. Unix Operating System
  5. debian
  6. ubuntu
  7. Arch Linux - 1
  8. 2 - Manjaro
  9. 3 4 5 6

10) 如何刪除以指定字符結(jié)尾的行?

使用以下 sed 命令刪除 m 字符結(jié)尾的所有行。

  1. # sed '/m$/d' sed-demo.txt
  2.  
  3. 3 RHEL
  4. 4 Red Hat
  5. 5 Fedora
  6. 6 Arch Linux
  7. 7 CentOS
  8. 8 Debian
  9. 9 Ubuntu
  10. 10 openSUSE

使用以下 sed 命令刪除 x 或者 m 字符結(jié)尾的所有行。

  1. # sed '/[xm]$/d' sed-demo.txt
  2.  
  3. 3 RHEL
  4. 4 Red Hat
  5. 5 Fedora
  6. 7 CentOS
  7. 8 Debian
  8. 9 Ubuntu
  9. 10 openSUSE

11) 如何刪除所有大寫字母開頭的行?

使用以下 sed 命令刪除所有大寫字母開頭的行。

  1. # sed '/^[A-Z]/d' sed-demo-1.txt
  2.  
  3. debian
  4. ubuntu
  5. 2 - Manjaro
  6. 3 4 5 6

12) 如何刪除指定范圍內(nèi)匹配模式的行?

使用以下 sed 命令刪除第 1 到 6 行中包含 Linux 表達式的行。

  1. # sed '1,6{/Linux/d;}' sed-demo.txt
  2.  
  3. 2 Unix Operating System
  4. 3 RHEL
  5. 4 Red Hat
  6. 5 Fedora
  7. 7 CentOS
  8. 8 Debian
  9. 9 Ubuntu
  10. 10 openSUSE

13) 如何刪除匹配模式的行及其下一行?

使用以下 sed 命令刪除包含 System 表達式的行以及它的下一行。

  1. # sed '/System/{N;d;}' sed-demo.txt
  2.  
  3. 3 RHEL
  4. 4 Red Hat
  5. 5 Fedora
  6. 6 Arch Linux
  7. 7 CentOS
  8. 8 Debian
  9. 9 Ubuntu
  10. 10 openSUSE

14) 如何刪除包含數(shù)字的行?

使用以下 sed 命令刪除所有包含數(shù)字的行。

  1. # sed '/[0-9]/d' sed-demo-1.txt
  2.  
  3. Linux Operating System
  4. Unix Operating System
  5. RHEL
  6. Red Hat
  7. Fedora
  8. debian
  9. ubuntu

使用以下 sed 命令刪除所有以數(shù)字開頭的行。

  1. # sed '/^[0-9]/d' sed-demo-1.txt
  2.  
  3. Linux Operating System
  4. Unix Operating System
  5. RHEL
  6. Red Hat
  7. Fedora
  8. debian
  9. ubuntu
  10. Arch Linux - 1

使用以下 sed 命令刪除所有以數(shù)字結(jié)尾的行。

  1. # sed '/[0-9]$/d' sed-demo-1.txt
  2.  
  3. Linux Operating System
  4. Unix Operating System
  5. RHEL
  6. Red Hat
  7. Fedora
  8. debian
  9. ubuntu
  10. 2 - Manjaro

15) 如何刪除包含字母的行?

使用以下 sed 命令刪除所有包含字母的行。

  1. # sed '/[A-Za-z]/d' sed-demo-1.txt
  2.  
  3. 3 4 5 6 

 

責任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2020-08-26 07:36:14

sed命令Linux

2022-08-17 12:35:26

Linux sed編輯器

2022-11-08 09:38:18

Linux命令行刪除文件

2024-10-28 16:42:04

Linux編輯器sed 命令

2022-10-13 20:09:32

userdelLinux

2019-09-23 15:40:42

sedLinux命令

2009-04-20 15:54:04

SQL Server重復行

2019-03-18 09:40:44

Linux命令編程語言

2019-12-12 18:00:54

awkLinux開源

2023-11-28 13:15:00

Linuxsed工具

2022-11-02 08:20:43

Linux

2024-12-16 15:07:10

2023-04-28 10:31:54

Linux命令圖像

2021-05-24 06:20:04

Linuxsed命令

2020-06-05 12:45:41

LinuxTmpwatchTmpreaper

2010-09-01 16:47:18

SQL刪除

2022-03-28 19:53:24

Linux恢復文件意外刪除文件

2020-02-17 11:08:44

JavaExcel辦公

2010-09-01 15:30:24

SQL刪除

2021-08-02 13:38:21

Linuxalias命令
點贊
收藏

51CTO技術(shù)棧公眾號