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)用以显示硬件时钟时 ...
随机推荐
- js判断json数据是否存在某字段的方法
方式一 !("key" in obj) if("name" in json){//json就是数组,name是你要找的值 console.log("有 ...
- 从零搭建react开发环境
早在六年前,前端开发已经实现了模块化.工程化开发,既然是模块化工程化开发那就少不了包管理工具,所以我们的第一步就是先从安装nodejs开始(安装nodejs携带JavaScript的包管理工具npm) ...
- PyQt5 基本语法(五)
目录 2. 输入控件(二) 2.2 步长调节 2.2.1 QAbstractSpinBox 2.2.1.1 描述 2.2.1.2 功能作用 2.2.1.2.1 使用 2.2.1.2.2 主要功能 2. ...
- VUE3 之 全局 Mixin 与 自定义属性合并策略 - 这个系列的教程通俗易懂,适合新手
1. 概述 老话说的好:心态决定命运,好心态才能有好的命运. 言归正传,今天我们来聊聊 VUE 中的全局 Mixin 与 自定义属性合并策略. 2. Mixin 的使用 2.1 全局 Mixin 之前 ...
- 技术管理进阶——什么Leader值得追随?
原创不易,求分享.求一键三连 Leader眼里的主动性 前几天孙狗下面小A身上发生了一件Case,让他感到很疑惑: 有一个跨部门较多的项目推进不力,于是善于交流的他被临时提拔成项目负责人,但马上令人 ...
- Spring Boot-@PropertySource注解
@PropertySource:加载自己手动编写的资源文件 有关@ConfigurationProperties注解的作用请访问Spring Boot-@Value获取值和@Configuration ...
- 解决关于ARM_MATH数学库宏定义的报错
昨天在建立新工程的时候发现加入含有ARM_MATH库的时候出现了宏定义报错. #error directive:"Define according the used Cortex core ...
- 五分钟搭建博客系统 OK?
前言: 请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i 概要: 通过 Docker Compose 在使用Docker容器构建的隔离环境中轻松运行 WordPress.在开始之前,请确保已安 ...
- Java基础语法Day_01
第1节 java运行环境 day01_01_Java语言发展史 day01_02_计算机进制转换 day01_03_计算机存储单元 day01_04_命令提示符_基本介绍 day01_05_命令提示符 ...
- 如何用C/C++实现去除字符串头和尾指定的字符
编程时我们经常需要对字符串进行操作,其中有一项操作就是去除字符串的头(尾)指定的字符,比如空格.通常我们会使用封装好的库函数或者类函数的Trim方法来实现,如果自己动手写一个TrimHead和Trim ...