一:linux中sed命令介绍
Linux sed 命令是利用脚本来处理文本文件。

sed 可依照脚本的指令来处理、编辑文本文件。

Sed 主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等。

1.sed作用
sed是linux中,流媒体编辑器
sed : 修改文件
2.sed命令格式
sed [参数] '处理结果' [操作对象]
3.参数
-e	: 允许多项编辑
-n : 取消默认输出
-i : 就地编辑
-r : 支持扩展正则
4.sed的编辑模式
d	: 删除
p : 打印
a : 在当前行后添加一行或多行
5.sed参数解析用法
1.指定删除文件第三行和第六行内容之多项编辑
案例:
sed -e '3d' -e '6d' 1.txt 2.指定打印取消默认输出(只显示打印出的第五行内容)
案例
sed -n '5p' 1.txt 3.就地编辑(直接编辑到文件内)
案例:
sed -i '5p' 1.txt 4.扩展正则(跟grep-E功能是一样的《普通正则是默认支持的,特殊正则需要使用扩展》)
案例:
定位删除两个斜线正则当中的内容'/123/d'就是匹配文件内123!
sed -r '/123/d' 1.txt
二:sed 参数 -f 案例实战解析
1.前介
4.扩展正则(跟grep-E功能是一样的《普通正则是默认支持的,特殊正则需要使用扩展》)
案例:
定位删除两个斜线正则当中的内容'/123/d'就是匹配文件内123!
sed -r '/123/d' 1.txt
2.引入简介
1.如果我们的扩展正则写的非常复杂的话,这个地方会非常任意写错。
所有说我们用到了以下方法:
就像面向对象中为了解决对象与对象之间的代码冗余的问题,我们用到了类一样。
3.方法流程(根据提供的规则命令匹配)
4.在 2.txt文件中编写
[root@localhost ~]# vim 2.txt

5.根据提供的规则命令匹配并删除数据
[root@localhost ~]# sed -f 2.txt 1.txt

1. '/123/d'	:匹配规则
2. 匹配规则可以放在 2.txt 文件内
3. -f 参数来指定规则文件(2.txt)
4. 来操作后面1.txt的操作对象

三:sed的编辑模式
d	: 删除
p : 打印
a : 在当前行后添加一行或多行
在sed中最中最重要的就是 定位 与编辑模式!
1.定位介绍解析
1.数字定位法
解释: 就是指定多少行,指定行号。
案例1('3d'代表删除多少行)
sed '3d' 1.txt
案例2('2,3d'代表删除2行和3行)
sed '2,3d' 1.txt 2.正则定位法
解释: 就是把数字的定位改成正则的定位(指定正则定位法)
案例1(删除以g开头的行)
sed '/^g/d' 4.txt
案例2(删除以包含g的行)
sed '/g/d' 4.txt 3.数字和正则定位法
解释: 就是指定一个数字后面是正则
案例1(从第三行开始删除到g结尾的行结束)
sed '3,/^g/d' 4.txt 4.正则和正则定位法
解释: 就是指定一个正则后面一个正则
案例1(删除以g开头的行到以j结尾的行结束)
sed '/^g/,/^j/d' 4.txt
2.sed的编辑模式
d	: 删除
p : 打印 a : 在当前行后添加一行或多行
案例1:(指定在文件第二行后添加xxx内容)
sed '2axxx' 1.txt c : 用新文件修改(替换)当前行
案例2:(指定替换(修改)第二行内容为xxx)
sed '2cxxx' 1.txt i : 在当前行之前,插入文本(单独使用时)
案例3:(指定在第二行之前插入/添加xxx内容)
sed '2ixxx' 1.txt r : 在文件中读内容
案例4:(将2.txt文件的内容,读到/添加到1.txt中的第二行后)
sed '2r 2.txt' 1.txt w : 将指定行写入文件
案例5:(将2.txt文件内容第二行写入w.txt文件内)
注:2.txt写入到w.txt内时会将w.txt之前内容清空写入
sed '2w w.txt' 2.txt y : 将字符转换成另一个字符
案例6:(将4第二行的小写f替换成大写F《只替换字符》)
sed '2y/f/F/' 4.txt
案例7:(将4第二行的小写f和a替换成大写F和A《只替换字符》)
sed '2y/fa/FA/' 4.txt 注: 单个称为字符!
单个以上为字符串! s : 将字符串转换成另一个字符串(每一行只替换一次)
案例8:(将文件内11替换成22)
sed 's/11/22/' 4.txt g : 全部执行
案例9:(全部替换g模式 加 s模式)
sed 's/11/22/g' 1.xtt i : 忽略大小写(跟 s 模式以前使用时)
案例10:(在文件内替换时没有大写F,只有小写时配合使用i《忽略大小写》)
sed 's/F/abc/gi' 4.txt

linux中sed命令(全面解析)的更多相关文章

  1. linux中sed命令的使用

    sed命令是linux或者shell编程中常用的筛选.替换命令,如果能熟练使用sed则对经常使用的人来说在工作上是非常有帮助的 下面把sed主要的用法列出来(有错误的地方大家可以指正): p命令只打印 ...

  2. linux中sed命令

    sed sed意为流编辑器(Stream Editor),在Shell脚本和Makefile中作为过滤器使用非常普遍,也就是把前一个程序的输出引入sed的输入,经过一系列编辑命令转换为另一种格式输出. ...

  3. linux中sed命令批量修改

    sed命令下批量替换文件内容  格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl 路径` 文件名 -i 表示inplace edit,就地修改文件 ...

  4. linux中uniq命令全面解析

    目录 一 :uniq作用 二:uniq格式 1.参数 2.参数案例解析: linuxuniq简介 Linux uniq 命令用于检查及删除文本文件中重复出现的行列,一般与 sort 命令结合使用. u ...

  5. linux中yum命令的解析

    yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...

  6. linux中sort命令全面解析

    目录 一:sort命令作用 二:sort格式 1.sort参数 2.参数解析 sort命令简介 Linux sort 命令用于将文本文件内容加以排序. sort 可针对文本文件的内容,以行为单位来排序 ...

  7. linux中awk命令(最全面秒懂)

    目录 一:linux中awk命令 1.awk命令简介 2.awk作用 3.awk的语法格式 4.解析awk使用方法 5.参数 6.awk的生命周期 二:awk中的预定义变量 三:awk运行处理规则的执 ...

  8. linux中awk命令详解(最全面秒懂)

    一:linux中awk命令 1.awk命令简介 AWK 是一种处理文本文件的语言,是一个强大的文本分析工具. 之所以叫 AWK 是因为其取了三位创始人 Alfred Aho,Peter Weinber ...

  9. Linux中exec命令相关

    Linux中exec命令相关 exec和source都属于bash内部命令(builtins commands),在bash下输入man exec或man source可以查看所有的内部命令信息. b ...

随机推荐

  1. 【LeetCode】760. Find Anagram Mappings 解题报告(C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 遍历 日期 题目地址:https://leetcode ...

  2. 【九度OJ】题目1176:树查找 解题报告

    [九度OJ]题目1176:树查找 解题报告 标签(空格分隔): 九度OJ http://ac.jobdu.com/problem.php?pid=1176 题目描述: 有一棵树,输出某一深度的所有节点 ...

  3. 【LeetCode】880. Decoded String at Index 解题报告(Python)

    [LeetCode]880. Decoded String at Index 解题报告(Python) 标签(空格分隔): LeetCode 作者: 负雪明烛 id: fuxuemingzhu 个人博 ...

  4. 【剑指Offer】数组中只出现一次的数字 解题报告(Python)

    [剑指Offer]数组中只出现一次的数字 解题报告(Python) 标签(空格分隔): 剑指Offer 题目地址:https://www.nowcoder.com/ta/coding-intervie ...

  5. EBGAN

    目录 概 主要内容 Zhao J., Mathieu M. & LeCun Y. Energy-based generative adversarial networks. ICLR, 201 ...

  6. Adversarial Examples Are Not Bugs, They Are Features

    目录 概 主要内容 符号说明及部分定义 可用特征 稳定可用特征 可用不稳定特征 标准(standard)训练 稳定(robust)训练 分离出稳定数据 分离出不稳定数据 随机选取 选取依赖于 比较重要 ...

  7. 初识JavaScript变量

    一.什么是变量? 变量即变化的量,在JS中变量是松散类型的,可以用来保存任何数据类型.把数据取个名字,放在内存中,就称之为变量! 通过变量名可以取到对应数据 二.为什么使用变量? 程序:代码的集合,一 ...

  8. K210,yolo,face_mask口罩检测模型训练及其在K210,kd233上部署

    前段时间考研,再加上工作,时间很紧,一直没有更新博客,这几天在搞k210的目标检测模型,做个记录,遇到问题可以添加qq522414928或添加微信13473465975,共同学习 首先附上github ...

  9. hisql ORM 框架研究(国内第一个支持HANA的ORM框架)

    HiSql 操作说明文档 V1.0 下一代ORM框架 国内第一个支持HANA的ORM框架 hisql源码下载 git clone https://github.com/tansar/HiSql.git ...

  10. EasySharding.EFCore 如何设计使用一套代码完成的EFCore Migration 构建Saas系统多租户不同业务需求且满足租户自定义分库分表、数据迁移能力?

    下面用一篇文章来完成这些事情 多租户系统的设计单纯的来说业务,一套Saas多租户的系统,面临很多业务复杂性,不同的租户存在不同的业务需求,大部分相同的表结构,那么如何使用EFCore来完成这样的设计呢 ...