Linux脚本sed命令

目录

一. sed命令定义

二. sed命令选项

三. sed语法选项

四. 案例解释

1. 打印奇数或偶数行

2. 打印固定行数

3. 打印包含字符的行

4. 打印特定字符首尾行

5. 删除固定行数

6. 删除特定字符行

7. 插入在固定行中

8. 替换规定行数

9. 使用变量

10. 多点编辑

11. 分组后项引用

五. 案例拓展

1. 把包含特定字符的行复制到规定行后

2. 把特定行复制到特定行后

3. 将文件内容复制到其他文件中

4. 提取IP地址

5. 提取网卡名

6. 提取版本号


一. sed命令定义

sed:是一个文本解析转换工具,可以读取文本,并根据指定的执行条件对文本内容进行编辑,最后输出所有行或者仅输出处理的某些行。

sed与awk不同的是sed读取一行,处理一行,输出一行。

sed可以在无交互的情况下实现相当复杂的文本处理操作,被广泛应用于Shell脚本中,用以完成各种自动化处理任务。

二. sed命令选项

格式:    sed [option]... 'script;script;...' [input  file...]
                     选项         自身脚本语法         支持标准输入管道

常用选项:
-n         #不输出模式空间内容到屏幕,即不自动打印-e         #多点编辑
例如:[root@www data]#sed -n -e '/^r/p'  -e'/^b/p' /etc/passwd-f FILE    #从指定文件中读取编辑脚本-r或-E     #使用扩展正则表达式-i.bak     #备份文件并原处编辑-s         #将多个文件视为独立文件,而不是单个连续的长文件流

三. sed语法选项

p          #打印当前模式空间内容,追加到默认输出之后
Ip         #忽略大小写输出
d          #删除模式空间匹配的行,并立即启用下一轮循环
a [\]text  #在指定行后面追加文本,支持使用\n实现多行追加
i [\]text  #在行前面插入文本
c [\]text  #替换行为单行或多行文本
w file     #保存模式匹配的行至指定文件
r file     #读取指定文件的文本至模式空间中匹配到的行后
=          #为模式空间中的行打印行号
!          #模式空间中匹配行取反处理
q          #结束或退出sed

四. 案例解释

1. 打印奇数或偶数行

2. 打印固定行数

3. 打印包含字符的行

4. 打印特定字符首尾行

5. 删除固定行数

6. 删除特定字符行

7. 插入在固定行中

8. 替换规定行数

9. 使用变量

10. 多点编辑

11. 分组后项引用

五. 案例拓展

1. 把包含特定字符的行复制到规定行后

2. 把特定行复制到特定行后

3. 将文件内容复制到其他文件中

4. 提取IP地址

5. 提取网卡名

6. 提取版本号

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/228991.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【从零开始学习Linux】一文带你了解yum周边生态及vim常见模式

🚩纸上得来终觉浅, 绝知此事要躬行。 🌟主页:June-Frost 🚀专栏:Linux入门 🔭【从零开始学习Linux】系列均属于Linux入门,主要包含Linux操作系统下的指令、操作、权限以及开发工具&a…

TIME_WAIT状态TCP连接导致套接字无法重用实验

理论相关知识可以看一下《TIME_WAIT相关知识》。 #include<stdio.h> #include<stdlib.h> #include<string.h> #include<unistd.h> #include<arpa/inet.h> #include<sys/socket.h> #include<errno.h> #include<syslog.h> #inc…

【开题报告】基于深度学习的驾驶员危险行为检测系统

研究的目的、意义及国内外发展概况 研究的目的、意义&#xff1a;我国每年的交通事故绝对数量是一个十分巨大的数字&#xff0c;造成了巨大的死亡人数和经济损失。而造成交通事故的一个很重要原因就是驾驶员的各种危险驾驶操作行为。如果道路驾驶员的驾驶行为能够得到有效识别…

Django大回顾-2 之 Django的基本操作、路由层,MTV和MVC模型

【1】MTV和MVC模型 MVC与MTV模型 --->所有web框架其实都遵循mvc架构 MVC模型 MVC 本来坨在一起的代码&#xff0c;拆到不同的位置 模型(M&#xff1a;数据层)&#xff0c;控制器(C&#xff1a;逻辑判断)和视图(V&#xff1a;用户看到的)三层 他们之间以一种插件式…

linux(2)之buildroot使用手册

Linux(2)之buildroot配置toolchain Author&#xff1a;Onceday Date&#xff1a;2023年11月27日 漫漫长路&#xff0c;才刚刚开始… 参考文档&#xff1a; Buildroot - Making Embedded Linux Easy 文章目录 Linux(2)之buildroot配置toolchain1. 构建配置1.1 配置config生成…

ICC2/innovus设置no 1x gap的方法

我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧? 拾陆楼知识星球入口 ICC2设置no 1x的方法如下: 1) set_placement_spacing_label -name X -lib_cells {*} -side right set_placement_spacing_label -name Y -lib_cells {*} -side left 2) set_placement_spacing_rul…

第二证券:机构密集调研消费电子、半导体产业链

据上海证券报记者核算&#xff0c;近一个月来&#xff0c;共有41家消费电子类公司和92家半导体公司&#xff08;核算标准&#xff1a;申万职业2021&#xff0c;下同&#xff09;发布出资者调研纪要。其间&#xff0c;有的公司款待了16个批次估计超200家安排&#xff0c;更有公司…

Debian10安装VMware Tools

一、原系统 首先我在界面按CTRLALTT和CTRLSiftT都没有反应&#xff0c;没关系&#xff0c;我有办法 系统版本 管理员用户 步骤一&#xff1a;打开VMware Tools文件 步骤二、将文件复制到自己熟悉的文件内 步骤三、命令行查看文件是否复制成功存在 步骤四、解压VMware-tools…

Linux 调试工具:gdb

调试复习 调试可谓是 “贯穿” 了程序员的一生&#xff0c;调试的重要性&#xff0c;就不再赘述啦&#xff01;如果你还不知道什么是调试&#xff0c;可以看看 Windows 系统的 Visual Studio 是如何调试的&#xff1a;➡️ visual stuudio 使用调试技巧 下载调试软件 gdb yu…

AntDB数据库:从海量数据处理,到5G计费商用核心

AntDB数据库自2008年研发面世以来&#xff0c;首先被应用于运营商的核心系统&#xff0c;满足运营商海量数据处理的需求。随着数字科技的不断发展&#xff0c;AntDB也在不断地更新迭代&#xff0c;逐渐地为更多行业与客户提供更全面的服务。5G时代来临&#xff0c;AntDB抓住发展…

W2311283-可燃气体监测仪怎么监测燃气管道

可燃气体监测仪怎么有效监测燃气管道 燃气管道遍布于城市地下各处&#xff0c;作为城市生命线的一部分&#xff0c;一旦燃气管网出现泄露问题便是牵一发而动全身&#xff0c;城市的整体安全也会受到威胁。但是如何才能科学管理和监测燃气管网呢&#xff1f; 燃气管网监测系统便…

Maven 介绍

文章目录 什么是 maven为什么要选择mavenmaven 仓库什么是maven中央仓库什么是maven本地仓库 idea如何创建出maven项目如何引入第三方库依赖配置国内源 下载 Maven Helper 插件查看各个项目之间的依赖关系 什么是 maven Maven是 Apache 下的一个纯 Java 开发的开源项目&#x…