shell脚本--sed

振鹭1年前技术文章459

sed后面接的动作,务必以 '........'两个单引号包住

1.擅长对文件进行操作处理

2.对文件信息进行内容的信息修改

-i 参数代表直接修改原文件


  • a :往后新增一行, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)

在文件的第四行后添加一行
sed '4a newLine' filename
如果要新增多行,例如在第四行后面增加两行字
sed '4a newline1\
newline2' filename


  • i :往前插入一行, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);

在文件的第二行前添加一行
sed '2i new line' filename


  • c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行

将2到5行替换为一行No 2-5 number
sed '2,5c No 2-5 number' filename


  • d :删除,因为是删除,所以 d 后面通常不接任何东西;

删除2到5行
sed '2,5d' filename
只删除第二行
sed '2d' filename
删除第三行到最后一行
sed '3,$d' filename
  • p :打印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~

数据的搜寻并显示:
输出打印含有abc的行
sed -n '/abc/p' filename
数据的搜寻并删除:
删除所有包含oo的行
sed  '/oo/d' filename
数据的搜寻并执行命令:
搜索 testfile,找到 oo 对应的行,执行后面花括号中的一组命令,每个命令之间用分号分隔,这里把 oo 替换为 kk,再输出这行:
sed '/oo/{s/oo/kk;p;q}' filename


  • s :取代,可以直接进行取代,通常这个 s 的动作可以搭配正则表达式,例如 's/old/new/g' 

数据的查找与替换
将 testfile 文件中每行第一次出现的 oo 用字符串 kk 替换,然后将该文件内容输出到标准输出
sed -e 's/oo/kk/' testfile
g 标识符表示全局查找替换,使 sed 对文件中所有符合的字符串都被替换,修改后内容会到标准输出,不会修改原文件:
sed -e 's/oo/kk/g' testfile
选项 i 使 sed 修改文件:
sed -i 's/oo/kk/g' testfile


返回列表

上一篇:PromQL语法

下一篇:Hudi集成Spark

相关文章

xtrabackup报错记录

xtrabackup报错记录

报错记录报错一:报错显示需要依赖,但是当我们执行 yum install -y libstdc++ 显示已是最新版本,且通过 yum 安装 一般会将依赖包都直接安装成功。这时候可以核实一下安装包和当前...

ES字段类型与内存管理

ES字段类型与内存管理

一、ES常见字段类型:1、 概述字段是数据存储的最小微粒,根据数据的性质不同将数据分成不同的字段类型,熟悉不同字段类型的特性,对索引的Mapping设计、查询调优都极其重要。2、 关键参数Index:...

K8s cni0网卡异常

K8s cni0网卡异常

一、问题现象pod启动时,调度到其中某个节点上的pod都无法正常启动,查看启动报错:network: failed to set bridge addr: "cni0" alrea...

PG的多版本并发控制(二)

PG的多版本并发控制(二)

二、 PG数据库DML操作的相关概念xmin、xmax、cmin、cmax是每个数据行tuple上的隐藏字段,主要用于区别不同事务以及相同事务内tuple的行版本。在了解这四个参数概念前,我们首先需要...

开源大数据集群部署(五)Freeipa客户端部署及配置(kerberos+ldap)

开源大数据集群部署(五)Freeipa客户端部署及配置(kerberos+ldap)

1、安装IPA-Client安装(每个节点均需安装)yum install ipa-client -y2、执行安装命令ipa-client-install3、执行完成后进入交互阶段4、安装完成后查看页...

企业级大数据安全架构(二)

企业级大数据安全架构(二)

2安全方案2.1 Knox访问控制Apache Knox是一个通过REST API和UI与Apache Hadoop 部署交互的应用网关。Knox网关为所有与Hadoop集群的REST和HT...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。