热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

linux删除以数字开头的文件,在Linux系统中使用sed命令从文件中删除行,附实例解析...

Sed命令代表StreamEditor,用于在Linux操作系统中执行基本的文本转换。sed是重要命令之一,它在文件操作中起主要作用,它可

Sed命令代表Stream Editor,用于在Linux操作系统中执行基本的文本转换。sed是重要命令之一,它在文件操作中起主要作用,它可用于删除或删除与给定模式匹配的特定行,此外,它还用于删除文件中的特定行,它还能够从文件中删除表达式,该文件可以通过指定分隔符(例如逗号,制表符或空格)进行标识。本文列出了十五个实例解析,它们可以帮助你学好sed命令,此外,当你有一些执行sed命令的要求时,它可以节省大量时间。

297651901388b299b1e767f15f62ff19.png

前言

注意:由于它是演示目的所以,我使用不带-i选项的sed命令,它通过删除行来打印Linux终端上文件的内容。

但是,如果要在实际环境中从源文件中删除行,请在sed命令中使用-i选项。

为了测试这个,我创建了sed-demo.txt文件并添加了以下内容和行号以便更好地理解:

# cat sed-demo.txt

1 Linux Operating System

2 Unix Operating System

3 RHEL

4 Red Hat

5 Fedora

6 Arch Linux

7 CentOS

8 Debian

9 Ubuntu

10 openSUSE

在Linux系统中使用sed命令从文件中删除行的实例

1)如何从文件中删除第一行?

如果要从文件中删除第一行,请使用以下语法。

N表示文件中的第N行,sed命令中的d选项用于删除行。

句法:

sed 'Nd' file

下面的sed命令删除sed-demo.txt文件中的第一行:

# sed '1d' sed-demo.txt

2 Unix Operating System

3 RHEL

4 Red Hat

5 Fedora

6 Arch Linux

7 CentOS

8 Debian

9 Ubuntu

10 openSUSE

2)如何从文件中删除最后一行?

如果要从文件中删除第一行,请使用以下语法。

$表示文件的最后一行。

下面的sed命令删除了sed-demo.txt文件中的最后一行:

# sed '$d' sed-demo.txt

1 Linux Operating System

2 Unix Operating System

3 RHEL

4 Red Hat

5 Fedora

6 Arch Linux

7 CentOS

8 Debian

9 Ubuntu

3)如何从文件中删除特定行?

下面的sed命令删除sed-demo.txt文件中的第三行:

# sed '3d' sed-demo.txt

1 Linux Operating System

2 Unix Operating System

4 Red Hat

5 Fedora

6 Arch Linux

7 CentOS

8 Debian

9 Ubuntu

10 openSUSE

4)如何从文件中删除行范围?

下面的sed命令删除5到7之间的行:

# sed '5,7d' sed-demo.txt

1 Linux Operating System

2 Unix Operating System

3 RHEL

4 Red Hat

8 Debian

9 Ubuntu

10 openSUSE

5)如何从文件中删除多行?

sed命令能够删除给定的行集。

在此示例中,以下sed命令删除第1行,第5行,第9行和最后一行:

# sed '1d;5d;9d;$d' sed-demo.txt

2 Unix Operating System

3 RHEL

4 Red Hat

6 Arch Linux

7 CentOS

8 Debian

5a)如何从文件中删除指定范围以外的行?

使用以下sed命令仅从指定范围以外的文件中删除所有行:

# sed '3,6!d' sed-demo.txt

3 RHEL

4 Red Hat

5 Fedora

6 Arch Linux

6)如何从文件中删除空行或空行?

以下sed命令从sed-demo.txt文件中删除空行或空行:

# sed '/^$/d' sed-demo.txt

1 Linux Operating System

2 Unix Operating System

3 RHEL

4 Red Hat

5 Fedora

6 Arch Linux

7 CentOS

8 Debian

9 Ubuntu

10 openSUSE

7)如何从文件中删除包含模式的行?

以下sed命令删除sed-demo.txt文件中与System模式匹配的行:

# sed '/System/d' sed-demo.txt

3 RHEL

4 Red Hat

5 Fedora

6 Arch Linux

7 CentOS

8 Debian

9 Ubuntu

10 openSUSE

8)如何从文件中删除包含多个字符串之一的行?

以下sed命令删除sed-demo.txt文件中与System或Linux模式匹配的行:

# sed '/System\|Linux/d' sed-demo.txt

3 RHEL

4 Red Hat

5 Fedora

7 CentOS

8 Debian

9 Ubuntu

10 openSUSE

9)如何从文件中删除以指定字符开头的行?

以下sed命令将删除以给定字符开头的所有行。

为了测试这个,我创建了另一个名为sed-demo-1.txt的文件,其中包含以下内容:

# cat sed-demo-1.txt

Linux Operating System

Unix Operating System

RHEL

Red Hat

Fedora

debian

ubuntu

Arch Linux - 1

2 - Manjaro

3 4 5 6

以下sed命令将删除以字符R开头的所有行:

# sed '/^R/d' sed-demo-1.txt

Linux Operating System

Unix Operating System

Fedora

debian

ubuntu

Arch Linux - 1

2 - Manjaro

3 4 5 6

以下sed命令将删除所有以字符R或F开头的行:

# sed '/^[RF]/d' sed-demo-1.txt

Linux Operating System

Unix Operating System

debian

ubuntu

Arch Linux - 1

2 - Manjaro

3 4 5 6

10)如何从文件中删除以指定字符结尾的行?

以下sed命令将删除以字符m结尾的所有行:

# sed '/m$/d' sed-demo.txt

3 RHEL

4 Red Hat

5 Fedora

6 Arch Linux

7 CentOS

8 Debian

9 Ubuntu

10 openSUSE

以下sed命令将删除以字符x或m结尾的所有行:

# sed '/[xm]$/d' sed-demo.txt

3 RHEL

4 Red Hat

5 Fedora

7 CentOS

8 Debian

9 Ubuntu

10 openSUSE

11)如何删除以大写字母开头的所有行

使用以下sed命令删除所有以大写字母开头的行:

# sed '/^[A-Z]/d' sed-demo-1.txt

debian

ubuntu

2 - Manjaro

3 4 5 6

12)如何删除文件中指定范围的匹配模式行?

以下sed命令仅在从1到6的行中出现时才删除模式Linux:

# sed '1,6{/Linux/d;}' sed-demo.txt

2 Unix Operating System

3 RHEL

4 Red Hat

5 Fedora

7 CentOS

8 Debian

9 Ubuntu

10 openSUSE

13)如何删除模式匹配线以及下一行?

使用以下sed命令删除包含模式“System”的行以及下一行:

# sed '/System/{N;d;}' sed-demo.txt

3 RHEL

4 Red Hat

5 Fedora

6 Arch Linux

7 CentOS

8 Debian

9 Ubuntu

10 openSUSE

14)如何从文件中删除包含数字的行?

下面的sed命令删除包含数字的所有行:

# sed '/[0-9]/d' sed-demo-1.txt

Linux Operating System

Unix Operating System

RHEL

Red Hat

Fedora

debian

ubuntu

下面的sed命令删除所有行以数字开头:

# sed '/^[0-9]/d' sed-demo-1.txt

Linux Operating System

Unix Operating System

RHEL

Red Hat

Fedora

debian

ubuntu

Arch Linux - 1

下面的sed命令删除所有以数字结尾的行:

# sed '/[0-9]$/d' sed-demo-1.txt

Linux Operating System

Unix Operating System

RHEL

Red Hat

Fedora

debian

ubuntu

2 - Manjaro

15)如何从文件中删除包含字母字符的行?

下面的sed命令删除包含字母字符的所有行:

# sed '/[A-Za-z]/d' sed-demo-1.txt

3 4 5 6

相关主题



推荐阅读
  • 如何将CentOS8转换为CentOSStream
    CentOS Stream是一个持续交付的Linux发行版,它在RHEL之前处于领先地位。它将具有滚动发布,即不断进行更改。CentOS将成为一个上游版本,它将具有测试补丁和更新。 ... [详细]
  • Ubuntu 9.04中安装谷歌Chromium浏览器及使用体验[图文]
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • Vagrant虚拟化工具的安装和使用教程
    本文介绍了Vagrant虚拟化工具的安装和使用教程。首先介绍了安装virtualBox和Vagrant的步骤。然后详细说明了Vagrant的安装和使用方法,包括如何检查安装是否成功。最后介绍了下载虚拟机镜像的步骤,以及Vagrant镜像网站的相关信息。 ... [详细]
  • 2016 linux发行版排行_灵越7590 安装 linux (manjarognome)
    RT之前做了一次灵越7590黑苹果炒作业的文章,希望能够分享给更多不想折腾的人。kawauso:教你如何给灵越7590黑苹果抄作业​zhuanlan.z ... [详细]
  • Linux下安装免费杀毒软件ClamAV及使用方法
    本文介绍了在Linux系统下安装免费杀毒软件ClamAV的方法,并提供了使用该软件更新病毒库和进行病毒扫描的指令参数。同时还提供了官方安装文档和下载地址。 ... [详细]
  • CentOS7.8下编译muduo库找不到Boost库报错的解决方法
    本文介绍了在CentOS7.8下编译muduo库时出现找不到Boost库报错的问题,并提供了解决方法。文章详细介绍了从Github上下载muduo和muduo-tutorial源代码的步骤,并指导如何编译muduo库。最后,作者提供了陈硕老师的Github链接和muduo库的简介。 ... [详细]
  • 进入配置文件目录:[rootlinuxidcresin-4.0.]#cdusrlocalresinconf查看都有哪些配置文件:[rootlinuxid ... [详细]
  • systemd-nspawn可以创建最轻量级的容器(ns的意思就是namespace),本文的实验平台是Ubuntu16.04,x86_64机器。本文的目的是:在Ubuntu中用syst ... [详细]
  • Linux神奇漏洞:长按回车键70秒 即可轻松拿到Root权限
    一般来说获取系统root权限是很困难的,尤其是加密系统中,但西班牙安全研究员hectormarco、ismaelripoll发现,linux系统下只需按住回车键70秒钟,就能轻 ... [详细]
  • 201720181 20155339 《信息安全系统设计基础》第六周学习总结
    2017-2018-120155339《信息安全系统设计基础》第六周学习总结教材学习内容总结控制转移:从ak指令到a(k1)指令的过渡。控制转移序列称为处理器的控制流 ... [详细]
author-avatar
MING1981岁月
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有