位置: 编程技术 - 正文

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 小于)

  • 怎么进行增值税纳税申报
  • 小规模纳税人出售使用过的汽车
  • 小规模纳税人月收入多少免征增值税
  • 增值税10000交多少税
  • 企业发生的印花税计入什么科目
  • 手续费和利息属于哪一科目
  • 规划设计合同需要缴纳印花税吗为什么
  • 小微企业减免附加税会计分录
  • 银行按揭方式销售开发产品
  • 收到长期股权投资的现金股利
  • 仓储部门折旧计入什么科目
  • 个体户国税异常怎么办
  • 年会奖金多少合适
  • 所得税预缴申报表
  • 财务软件服务费属于什么费用
  • 做服装批发要具备哪些条件
  • 个体户交地税
  • 减税降费在中国 应形成制度性
  • 企业所得税优惠事项包括哪些?
  • 外企企业所得税怎么计算
  • 筹资活动流入的现金是内源融资吗
  • 银行承兑汇票保证金是什么意思
  • 网络适配器感叹号代码43
  • 网页无法复制文字破解
  • 注册会计师考试成绩查询2023
  • 长期股权投资增加的原因
  • 个人二手车转让协议书免费
  • 广告公司收到广告发票如何入账
  • 软件工程毕设题目冷门
  • 除了正式发票还有啥
  • 房产自用或出租什么意思
  • 预售商品房转让合同
  • 残疾人在公司上班公司有什么好处
  • maven视频教程
  • 红字发票步骤
  • laravel 5.3中自定义加密服务的方案详解
  • 建筑劳务公司的法人代表有什么责任
  • 与资产相关的政府补助有哪些
  • vue3 ref dom
  • php initialize
  • 短期借款转为长期借款引起的会计要素变化
  • phpcms邀请注册送积分
  • 个人所得税app怎么查询个人所得税
  • 如何让网站优化成功
  • 小规模纳税人购进农产品可以抵扣进项税吗
  • 月度合并报表与年度合并区别
  • 独资企业和公司区别
  • 物业公司收取的电费怎么确认收入
  • mysql数据库在使用时的常见错误号和解决方法有哪些?
  • 在windowsxp的应用程序中,经常
  • 加工费的进项发票摘要写什么
  • 收到销售折让的负数发票怎么做会计分录
  • 待处理财产损益会计分录
  • 进项税额转出在哪里查
  • 购入固定资产一次性扣除政策
  • 采用补偿贸易方式的是
  • 编写高质量代码改善JAVA程序的151个建议
  • ubuntu-
  • winxp纯净版系统
  • mac移动硬盘怎么改名
  • Fedora 9 texlive + vim-latex + kile安装配置
  • sunasServ.exe - sunasServ是什么进程 有何作用
  • windows xp的控制面板
  • powershow是什么意思
  • win10添加功能在哪
  • cocos2dx3d2d结合
  • unity3d inspector
  • AJAX和jQuery动态加载数据的实现方法
  • javascript ES6 新增了let命令使用介绍
  • service segment
  • android开源库
  • javascript怎么学
  • jquery iframe写入内容
  • js在div中添加div
  • 福建省电子税务局操作指南
  • 资本结构不合理的公司有哪些
  • 国家税务总局电话人工客服
  • 税务申报规则
  • 地税服务大厅上班时间
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设