位置: 编程技术 - 正文

sed初学者实用说明(sed基本用法)

编辑:rootadmin

例如,在多个系统、应用程序安装之后,我们往往需要对很多配置文件进行修改,用vi编辑器意味着耗费时间、重复劳动,而sed就可将我们从繁重的重复劳动中解放出来。

sed的调用方式:

1、sed [sed选项] 'sed命令' 要修改的文件2、sed [sed选项] -f sed脚本 要修改的文件3、sed脚本 [sed选项] 要修改的文件

这里仅介绍最常用的第一种方式

sed选项:仅列常用的

-i:直接修改源文件(不用这个选项的话无法直接修改,必须重定向到新文件,如果仅作为输出测试则不需此选项),还可将源文件修改前备份sed -i.bak 's///' test.txt 将test.txt备份为test.txt.bak,然后将文件内行第一个出现的“”替换为“”-e:多次编辑,例如先将所有的替换为,再将第7行前加#号注释sed -i -e 's///g' -i -e '7 s/^/#/' test.txt-f:指定sed脚本文件名-n:取消默认的输出(不打印),用sed不加任何选项的话你会看到所有内容输出,并不是按照sed命令所限制的条件输出,那么配合“p”命令经可以过滤掉不符合条件的行,并显示出符合条件的行,例如sed -n '查找所有包含字符的行'p test.txt 或 sed -n '查找所有包含字符的行p' test.txt

sed命令:这里可以使用正则表达式,如遇特殊字符,需用“”来屏蔽其特殊含义,例如“$”表示普通的字符$

x x为某行行号x,y 例如2,5,从第2行到第5行/val/ 查询包含“val”字符的行/val1/val2/ 查询包含两个模式的行val/,x 在给定行号的行上查询包含“val”的行x,/val/ 通过行号和模式查询匹配的行x,y! 不包含指定行号x,y的行

p 打印匹配的行= 显示行号a 在定位了的行之后附加内容i 在定位了的行之后插入内容d 删除定位的行,例如:2d 代表删除第2行c 用新文本替换定位行的文本s 替换,形式为:'s/查找的内容/替换的内容/'g 进行全局替换,如不使用此选项将只对该行匹配到的第一个结果进行替换,该行下一个匹配的就不处理了。...其他就不介绍了,百度搜下吧

实例学习:test.txt文件内容为The honeysuckle band played all night long for only $It was an evening of splendid music and companyToo bad the disco floor fell through at :The local nurse Miss P.Neave was in attendance

1、显示第2行的内容sed -n '2p' test.txt

2、显示第1到3行的内容sed -n '1,3'p test.txt

3、仅显示包含“disco”的行sed -n '/disco/'p test.txt

4、显示包含“$”字符的行sed -n '/$/'p test.txt

5、显示以数字结尾的行,[0-9]是正则表达式 代表数字0到9;“$”表示行尾(“^”表示行首)sed -n '/[0-9]$/'p test.txt显示结果为:The honeysuckle band played all night long for only $Too bad the disco floor fell through at :

6、显示以数字结尾的行并显示以大写T为开头的行sed -n -e '/^T/'p -e '/[0-9]$/'p test.txt

7、匹配任意字母、后跟任意字母的多次重复,并以“ing”结尾的行sed -n '/.*ing/'p test.txt

8、第一行与最后一行sed -n '1p' test.txtsed -n '$p' test.txt

9、将“nurse”改为“little nurse”,“&”命令用来重新调用被替换的内容sed -n 's/nurse/little &/p' test.txt

、先将所有的替换为,再将第7行前加#号注释sed -i -e 's///g' -i -e '7 s/^/#/' test.txt

、将“--------”删除,将空行删除,将第一行和最后一行删除,并打印第一列文件内容:Database Size(MB) Date Created------------------------------------------mysql //test //

(2 rows affected)命令:cat test.txt | sed 's/--*//g' | sed '/^$/d' | sed '$d' | sed '1d' | awk '{print $1}'显示结果:mysqltest说明:使用s/--*//g删除横线-------使用/^$/d删除空行使用$d删除最后一行使用1d删除第一行awk {print $1}打印第一列

、一些杂项例子^[0-9]表示行第一个字符为任意数字,例如“1asdf”;^[0-9]*表示行首包含任意个数的数字,例如“asdf”[0-9][0-9]*$表示行尾包含至少2个数字,例如“asdfasdf”“asdf”sed -i 's/^[0-9]*//g' test.txt 删除行首的任意数字sed -i -e 's/^[0-9]*//g' -i -e 's/$/& passed/' test.txt 删除行首任意数字,并在每行结尾加上“ passed”sed -i -e 's/^/#&' test.txt 给每行行首加上“#”注释s/.$//g 删除以句点结尾的行的句点s/^[ ][ ]*// 删除行首的任意个空格s/^.// 删除行首的第一个字符s/^/// 删除行首的“/”字符s/SP(..)//g 删除字符“SP”以及紧跟其后的两个任意字符,“SPLLY”-->“Y”

推荐整理分享sed初学者实用说明(sed基本用法),希望有所帮助,仅作参考,欢迎阅读内容。

sed初学者实用说明(sed基本用法)

文章相关热门搜索词:sed的使用,sed的使用,sed基本用法,sed-i,sed基本用法,sed-i,sed基本用法,sed基本用法,内容如对您有帮助,希望把文章链接给更多的朋友!

shell中1小于/dev/null 2大于&1的含义 shell中可能经常能看到:/dev/null2&1命令的结果可以通过%的形式来定义输出/dev/null代表空设备文件代表重定向到哪里,例如:echo""/home/.txt1表示stdout

linux下自动备份MySQL数据并上传到FTP上的shell脚本 #!/bin/bash#Mysqlautobackupshell###----------------setthemysqlloginparametersdbuser=rootdbpasswd=dbserver=localhostdbname=fwserverdbopt=--optbackupdir=/dbbackup/#-----------------settheFTPparamter

VPS自动备份数据库到FTP的脚本代码 1)确保自己在home目录(若不是,运行:cd/home)2)新建backup文件夹(命令:mkdirbackup)3)新建脚本backup.shvibackup.sh复制以下代码(复制完后:wq!要保存):#!/b

标签: sed基本用法

本文链接地址:https://www.jiuchutong.com/biancheng/378361.html 转载请保留说明!

上一篇:对Shell 脚本加密的方法(shell脚本加密不可破解)

下一篇:shell中1小于/dev/null 2大于&1的含义(shell while 小于)

  • 海南增值税发票图片
  • 航空公司开具的个人抬头的发票可以税前扣除吗
  • 计提社保公积金的会计分录
  • 金税盘开具电子发票后如何保存电子版
  • 个体工商户生产经营所得税率
  • 购物中心联营扣点
  • 生产出来的次品怎么入账
  • 母公司收到的分红计入利润吗
  • 分公司清算和总公司清算
  • 税控系统抄报税
  • 文化事业建设费征收对象
  • 简化丢失专用发票的处理流程
  • 电子普通发票怎么开
  • 生产企业先出库后入库
  • 电脑管家玩游戏卡吗
  • 联想笔记本在bios中怎么把图标和字变大
  • 个税汇算清缴已退税到账,怎么更正
  • 劳务费要申报个税吗怎么申报
  • 出租商品计入其他业务收入吗
  • 安装adsl modem必须安装什么协议
  • 公司制作一个app要多少钱
  • easyexcel解析csv
  • 最高像素的手机
  • 其他业务收入产品包括
  • 缴纳季度企业所得税比例
  • 只有收据没有发票是不是逃税
  • 收到业绩补偿会扣税吗
  • 增值税价外费用是什么意思
  • php如何创建文件
  • 结转去年成本
  • js点击图片跳转页面
  • 个人独资企业如何做账
  • New Bing怼人、说谎、PUA,ChatGPT已经开始胡言乱语了
  • php如何入门
  • Yii2中SqlDataProvider用法示例
  • 暂估入库以及暂估的区别
  • jsp页面构成
  • 网上抄税报税操作流程
  • 真发票假业务会坐牢吗
  • 未开票收入增值税申报
  • 加油卡充值如何退款
  • 更正申报会扣分吗
  • 经营成本包括五项内容
  • 企业与债权人进行债务重组
  • 个人承担的个税是公司的成本费用吗
  • 应交税费减免税额在借方还是贷方
  • 企业发票冲红的风险
  • 计提工资是否要交税
  • 公章未备案是否不合法
  • 会计记账凭证怎么装订视频
  • 资产负债表怎么看财务状况
  • 记账凭证的附件和附单据
  • mysql5.7.24安装配置教程
  • 在mysql中,删除表的外键约束的关键字为()
  • 统计得到的一组数据有80个
  • 微软星期二补丁KB3022345导致USB设备无法识别怎么办?
  • 微软在印度的投资
  • mac截图清晰度设置方法
  • centos必学的60个命令
  • 卡巴斯基2019
  • 如何给电脑重装系统win7系统
  • win10睡眠什么意思
  • 如何ie8升级到10
  • ubuntu20.04安装vnc
  • linux系统输入法锁定了怎么解开
  • 如何解决windows无法连接到打印机
  • Win10预览版桌面图标和任务栏不翼而飞怎么办?
  • centos安装教程详解
  • win8.1怎么用
  • win8切换到桌面
  • win10家庭版专业版教育版
  • css设置最大高度
  • nodejs获取客户端设备信息
  • unity3d脚本编程
  • js对象判断
  • js命名函数
  • 总结网络io模型的特点
  • 税务机关文化建设
  • 农村摩托车上牌要什么证件和手续
  • 定额发票怎么入账
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设