Linux系统sed命令常用参数实战
Linux系统sed命令常用参数实战
常用参数
- -n 输出某行的文本内容,通常与p联合使用,
- -e 命令行模式下进行sed的动作编辑,输出编辑后的内容,源文件不会发生变化
- -f 以命令中指定的script文件来处理输入的文本文件
- -i 直接编辑源文件
常用动作参数
- a 行后追加行
- c 替换
- d 删除
- i 行前插入行
- p 打印
- s 查找并替换
插入操作
- 行前插入
[root@localhost data1]# sed -i -e '2itest' test.txt

- 行后插入
[root@localhost data1]# sed -i -e '2atest' test.txt

- 尾行插入
[root@localhost data1]# sed -i -e '$a123' test.txt

- 插入多行
\n表示换行,\t表示一个制表位
[root@localhost data1]# sed -i -e '2i123\n123\t123' test.txt

- 插入的字符中存在
\n或\t时,需要转义
[root@localhost data1]# sed -i -e '2i123\\n123\\t123' test.txt

删除操作
- 删除第2行
[root@localhost data1]# sed -i -e '2d' test.txt

- 删除尾行
[root@localhost data1]# sed -i -e '$d' test.txt

- 删除第2行及第4行
[root@localhost data1]# sed -i -e '2d;4d' test.txt

- 删除第2行至第4行
[root@localhost data1]# sed -i -e '2,4d' test.txt

修改操作
- 将第1行的内容替换为1
[root@localhost data1]# sed -i -e '1c1' test.txt

- 将尾行内容替换为end
[root@localhost data1]# sed -i -e '$cend' test.txt

- 将第一行至第三行的内容替换为3
[root@localhost data1]# sed -i -e '1,3c3' test.txt

思考:有没有替换第一行和第三行的内容为某个值?
网上百度了好久,没有得到有用的结果,静下心来思考了下替换的实现逻辑,由上面的结果得知(将第一行至第三行的内容替换为3),是将所指定的行删除后再新增了一行内容,那么删除第1行和第3行后新增的内容是放在第几行呢?放在第1行或者第3行都感觉不太对,因此本人觉得应该没有替换第一行和第三行的内容为某个值的sed写法,个人见解,如有错误勿喷,请留言交流,非常感谢!!!
查询操作
- 查看第一行内容
sed -n -e '1p' test.txt

- 查看第1行及第3行内容
[root@localhost data1]# sed -n -e '1p;3p' test.txt

- 查看第1行至第3行内容
[root@localhost data1]# sed -n -e '1,3p' test.txt

- 查看尾行
[root@localhost data1]# sed -n -e '$p' test.txt

替换操作
- 替换每行的第一个匹配值
[root@localhost data1]# sed -i -e 's/ww/root/' test.txt

- 替换文件中所有匹配的值
[root@localhost data1]# sed -i -e 's/root/ww/g' test.txt

Linux系统sed命令常用参数实战的更多相关文章
- Linux系统——sed命令
sed命令精讲 cat工作原理 cat命令只想文件,把文件打开后,将文件中所有内容一次性读到内存中,从内存里一次性输出到屏幕上,此时可能存在内存装不下的情况,因此cat命令只能查看小文件内容,不能读取 ...
- NO22 Linux正则表达式--grep命令常用参数
Linux正则表达式: 一.基础正则第一波字符说明: 示例: 二.基础正则第二波字符说明: 三.基础正则第二波字符说明: 示例: grep:一般常用参数 示例:+和* ?和.: |: () ...
- Linux系统date命令的参数及获取时间戳的方法
date指令相关用法示例 date 用法: date [OPTION]... [+FORMAT]date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] ...
- Linux操作系统的文件查找工具locate和find命令常用参数介绍
Linux操作系统的文件查找工具locate和find命令常用参数介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.非实时查找(数据库查找)locate工具 locate命 ...
- Linux系统-解压缩命令集合
Linux系统-解压缩命令集合 linux zip命令 zip -r myfile.zip ./* 将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. ...
- free命令常用参数详解
free命令常用参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在运维期间我们会经常去查看服务器硬件信息,比如说内存,大家可能知道看内存用“[root@yinzhengji ...
- [转帖]RPM的原理及rpm命令常用参数
RPM的原理及rpm命令常用参数 2015年09月14日 15:39:43 lose_wait 阅读数 1298 https://blog.csdn.net/u012012939/article/de ...
- linux中sed命令(全面解析)
目录 一:linux中sed命令介绍 1.sed作用 2.sed命令格式 3.参数 4.sed的编辑模式 5.sed参数解析用法 二:sed 参数 -f 案例实战解析 1.前介 2.引入简介 3.方法 ...
- Linux系统基础命令
这是看itercast的学习笔记 Linux系统基础命令 日期时间 命令date用以查看.设置当前系统时间:格式化显示时间: +%Y--%m--%d 命令hwclock(clock)用以显示硬件时钟时 ...
随机推荐
- 设计模式学习笔记(十五)命令模式及在Spring JdbcTemplate 中的实现
命令(Command)模式是指将请求封装成为一个对象,使发出请求和执行请求的责任分割开,方便将命令对象进行存储.传递.调用.增加与管理. 也就是将发送者.接收者和调用命令封装成独立的对象,来供客户端调 ...
- 自家APP打开微信小程序,可行吗?
小程序的通用解决方案,今天为大家介绍一下FinClip.它的最大特点,就是能够让任何 App 运行小程序. 只需要在你的 App 里面,引入它的 SDK,就能加载运行外部小程序了.除了 SDK,它还提 ...
- Ubu18开机自启动
Ubu开机自启动 简单示例 在/etc/init.d/目录下新建启动脚本Test #!/bin/bash ### BEGIN INIT INFO # Provides: Test # Required ...
- java的collection类
collection来源于java.util包. Collection 接口常用的方法 size():返回集合中元素的个数 add(Object obj):向集合中添加一个元素 addAll(Coll ...
- 高精度加法(C++实现)
高精度加法 简介 用于计算含有超过一般变量存放不下的非负整数 高精度加法这个过程是模拟的小学竖式加法计算 步骤 以下有顺序之分 数组清零 输入 获取长度 逆置 字符型数字转成对应的整型数字 计算并输出 ...
- springcloud集群测试
使用ribbon实现负载均衡,访问同一个url,轮询不同的服务提供端,从不同的数据库中取数据.
- HTML5+JavaScript+MUI 毕业答辩常见问题
问题1:HTML5前端开发环境有哪些? HTML5网页前端开发,实际也是HTML网页开发,HTML5知识万维网的核心语言.标准通用标记语言下的一个应用超文本标记语言(HTML)的第五次重大修改的第五次 ...
- partOne代码修改
学生毕业论文系统----代码修改 /* 基本类ScoreInformation类相较之前无变化*/public class ScoreInformation { private String st ...
- .NET MAUI发布了期待已久的候选版本(RC1)
作者:David Ortinau 我们激动地宣布在4/13/2022.NET多平台应用UI (.NET MAUI)发布了候选版本.SDK现在已经集成好了API,可以更新库,并为GA(通用可用性)兼容性 ...
- QGIS 3.14插件开发——Win10系统PyCharm开发环境搭建四步走
前言:最近实习要求做一个QGIS插件,网上关于QGIS 3.14插件开发环境搭建的文档不多,而且也不算太全面.正好实习的时候写了一个文档,在这里给大家分享一下. 因为是Word转的Markdown,可 ...