Linux脚本sed命令

news2024/12/25 1:38:23

目录

一. 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.coloradmin.cn/o/1263288.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

研究前沿|NAR:一个综合性的植物代谢组数据库

引言 2023年10月,华中农业大学小麦改良创新团队陈伟教授课题组在Nucleic Acids Research发表题为“PMhub 1.0: a comprehensive plant metabolome database”的文章,系统介绍了他们开发的植物代谢分析网站(PMhub)的功能与价值。P…

【AICFD案例教程】水冷板散热分析

AICFD是由天洑软件自主研发的通用智能热流体仿真软件,用于高效解决能源动力、船舶海洋、电子设备和车辆运载等领域复杂的流动和传热问题。软件涵盖了从建模、仿真到结果处理完整仿真分析流程,帮助工业企业建立设计、仿真和优化相结合的一体化流程&#x…

基于SpringBoot的手机官方商城系统

基于SpringBoot的手机官方商城系统 摘要:随着电子商务的发展,网上购物已成为人们普遍的购物方式。与此同时,网上支付也得到了迅速的发展,大有赶超传统支付的趋势。在今天这个信息化程度高、生活节奏快的现代社会,传统…

强化学习Q-Learning算法和简单迷宫代码

使用到的符号: agent 代理 reward 奖励 state(s) 状态 action(a) 行为 R reward 矩阵 Q 矩阵:表示从经验中学到的知识 episode:表示 初始→目标 一整个流程 贝尔曼方程(迭代公式): Q ( s , a ) ← Q ( s …

网络割接,用VRRP替换HSRP,你得这么割才行!

组网需求 如图3-11所示,C6500作为核心层设备上行连接出口路由器NE40E-X3,下行连接接入层设备CE6800。C6500上配置HSRP实现冗余备份网关,同时在二层网络部署MSTP破除环路。 总体思路 HSRP为CISCO私有协议,CE系列交换机&#xff08…

RabbitMQ之延迟消息

文章目录 前言一、死信交换机二、延迟消息死信交换机实现延迟消息图解流程 DelayExchange插件实现延迟消息安装插件声明延迟交换机发送延迟消息 总结 前言 死信交换机、延迟消息 一、死信交换机 当一个队列中的消息满足下列情况之一时,可以成为死信(dea…

微信小程序推送服务号消息(一)【Go+微信小程序+微信服务号+微信开放平台】

一、需求场景 业务需要给微信小程序用户在某些场景推送微信服务号消息,例如:订单即将超时,电子合同签约超时等; 二、开发准备 1、开通微信服务号 入口:微信公众平台 1.1 在服务号中获取推送消息所需的配置信息&#…

头插法巧解任意链表区间反转

题目链接:https://leetcode.cn/problems/reverse-linked-list-ii/description/?envTypestudy-plan-v2&envIdtop-interview-150 头节点插入法,设置一个虚拟节点,不断循环到要反转的前面一个位置,哪怕是1也能包含进去。接着反…

Python UUID 完全指南

更多资料获取 📚 个人网站:ipengtao.com UUID(Universally Unique Identifier,通用唯一标识符)是一种全局唯一标识符生成方式,用于创建独一无二的标识符。Python的 uuid 模块提供了多种方法用于生成各种类…

四丶openlayer之瓦片地图

瓦片地图源于一种大地图解决方案,针对一整块非常大的地图进行切片,分成很多相同大小的小块地图,在用户访问的时候,再一块一块小地图加载,拼接在一起,从而还原成一整块大的地图。这样做的优点在于&#xff0…

【算法】FFT-1(递归实现)(不包括IFFT)

FFT 多项式多项式乘法复数及运算导数泰勒公式及展开式欧拉公式单位根 FFTCode IFFT 多项式 我们从课本中可以知道,一个 n − 1 n-1 n−1 次的多项式可以写成 a 0 a 1 x a 2 x 2 a 3 x 3 ⋯ a n − 1 x n − 1 a_{0}a_{1}xa_{2}x^2a_{3}x^3\dotsa_{n-1}x^{n-…

从 0 搭建 Vite 3 + Vue 3 Js版 前端工程化项目

之前分享过一篇vue3+ts+vite构建工程化项目的文章,针对小的开发团队追求开发速度,不想使用ts想继续使用js,所以就记录一下从0搭建一个vite+vue3+js的前端项目,做记录分享。 技术栈 Vite 3 - 构建工具 Vue 3 Vue Router - 官方路由管理器 Pinia - Vue Store你也可以选择vue…

2023年【G2电站锅炉司炉】考试试卷及G2电站锅炉司炉模拟试题

题库来源:安全生产模拟考试一点通公众号小程序 G2电站锅炉司炉考试试卷是安全生产模拟考试一点通生成的,G2电站锅炉司炉证模拟考试题库是根据G2电站锅炉司炉最新版教材汇编出G2电站锅炉司炉仿真模拟考试。2023年【G2电站锅炉司炉】考试试卷及G2电站锅炉…

Unity 接入TapADN播放广告时闪退 LZ4JavaSafeCompressor

通过跟踪安卓日志,发现报如下错误 Didnt find class "com.tapadn.lz4.LZ4JavaSafeCompressor" 解决方案: 去掉Minify这边的勾选,再打包即可。

香港优才计划是什么意思?一文详解2023年最新政策!

香港优才计划是什么意思?一文详解2023年最新政策! 目前香港优才计划申请火热,但是还是有很多新手不太了解这个项目,跟风申请绝对不是什么好事,先了解清楚再考虑也是对自己对家人的一种交代。这篇文章就再来科普下。 优…

AWVS 使用方法归纳

1.首先确认扫描的网站,以本地的dvwa为例 2.在awvs中添加目标 输入的地址可以是域名也可以是ip,只要本机可以在浏览器访问的域名或ip即可 添加地址及描述之后,点击保存,就会展现出目标设置选项 business criticality译为业务关键…

SpringCloud之服务网关Gateway组件使用——详解

目录 一、网关介绍 1.什么是服务网关 2. 为什么需要网关 3.网关组件在微服务中架构 二、服务网关组件 1. zuul 1.x 2.x(netflix 组件) 1.1 zuul版本说明 2. gateway (spring) 2.1 特性 2.2 开发网关动态路由 2.2.1.创建项目引入网关依赖 2.2.2 快捷方式配置路由 2.2…

C++学习——类和对象(上)

C学习——类和对象 一、面向对象和面向过程的初步认识二、什么是类 一、面向对象和面向过程的初步认识 我们之前学习了C语言,我们知道 ① C语言:C语言是一门面向过程的语言,关注的是过程,分析出求解问题的步骤,通过函…

Web安全之SQL注入:明明设置了强密码,为什么还会被别人登录?

一、背景 让我们先来看一个案例。某天,当你在查看应用的管理后台时,发现有很多异常的操作。接着,你很快反应过来了,这应该是黑客成功登录了管理员账户。于是,你立刻找到管理员,问他是不是设置了弱密码。管…

jenkins 代码执行 (CVE-2017-1000353)漏洞复现

jenkins 代码执行 (CVE-2017-1000353)漏洞复现 名称: jenkins 代码执行 (CVE-2017-1000353) 描述: ​Jenkins 可以通过其网页界面轻松设置和配置,其中包括即时错误检查和内置帮助。 插件 通过更新中心中的 1000 多个插件,Jenkins 集成了持续集成和持续…