sed的基本用法
了解sed的基本参数
sed匹配的方法: '//'p, 此符号与grep的引号类似,但sed是一定加此符号的,且还要加上-n的参数,匹配起来相当麻烦。
sed匹配的方法: '//'pI 加上I的参数是指不区分大小写
sed的匹配删除: '//'d d配置出来直接删除,也可以指定行删除。如我要删除1-10行的文件:sed -i '1,10'd filename
sed的替换匹配: '1,10s/old/new/g 1,10表示一个范围,指1到10行 例子:替换10到50行内的root用户替换成yeyu用户: sed -i '10,50s/root/yeyu/g' filenmae
sed在开头添加: head filename |sed -r 's/(.*)/new:&/g' new:是指添加的内容。 (.*)表示一整行,后面的&代表前面的(.*)字符。
-r # 脱义参数,与grep的-E参数一样。
-n # 可以打印指定的行, sed -n '10'p fielname 或者 sed -n '2,5'p filename 或者 '5,$' 表示5到最后
-e # 可以同时写多个条件,匹配出来
-i # 改变原文件。
了解的sed的一些基本用法,我们来举几个例子实现下,正确的用法吧
1.通过sed在第5-9行开头插入"我爱你"
sed -i '5,9s/^/我爱你/g' install_nginx.sh

2.结尾插入"完美世界"
sed -i '5,9s/$/完美世界/g' install_nginx.sh

3.比如删掉5-9行,或者含有ansible的行
sed -in '5,9'd install_nginx.sh sed -i '/ansible/'d install_nginx.sh

4. 最后把test替换成yy_tomcat_gateway
sed 's/test/yy_tomcat_gateway/g' install_nginx.sh (这里没加-i参数,直接打印在桌面)

举了几个简单的例子,希望对大家有帮助。正则还是得多用才会慢慢熟悉
截取固定时间段的日志
sed -n '/2019-12-04 17:50:00/,/2019-12-04 18:00:00/'p mq_consumer.2019-12-04.log >12_04-2.log
【end】
sed的基本用法的更多相关文章
- sed和awk用法
		sed和awk用法 Sed sed是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换.删除.新增.选取等特定工作,下面先了解一下sed的用法sed命令行格式为 ... 
- Linux三剑客之sed的基本用法介绍
		[介绍] sed是一款强大的非交互式的文本编辑器,可以对文件文本进行增删改查的相关操作,本文主要是讲解以下sed的基本用法. [常用选项] -e 下一个参数为一个sed指令,一般只会用于同一行有多个s ... 
- sed的实际用法举例
		sed:Stream Editor文本流编辑,sed是一个“非交互式的”面向字符流的编辑器.能同时处理多个文件多行的内容,可以不对原文件改动,把整个文件输入到屏幕,可以把只匹配到模式的内容输入到屏幕上 ... 
- fw:sed的高级用法
		转的,找不到原创了.... sed高级用法 <收藏> 首先,应该明白模式空间的定义.模式空间就是读入行所在的缓存,sed对文本行进行的处理都是在这个缓存中进行的.这对接下来 的学习是有帮助 ... 
- sed的惯常用法
		1:注释掉某一行这个经常会遇到的,把配置文件里某一行注释掉.让他不起作用.sed -i -e ’121 s/^/#/’ /usr/local/apache2/conf/httpd.conf上面一行命令 ... 
- grep,sed,awk用法整理
		grep -c 打印出符合要求的行数 -i 忽略大小写 ignore -n 连同符号一起输出 num -v 打印出不符合要求的行 -A2 本行及下面两行 - ... 
- sed 以及 awk用法
		sed 格式 sed[options] "script" FILE.... 选项: -n:静默模式,不输出模式空间内的内容:默认打印空间模式的内容 -r:扩展的正则表达式 -f 文 ... 
- sed的额外用法(网摘)
		#在我开始动手写一个一个的脚本的时候才会看到更多的用法 1. 在某行的前一行或后一行添加内容(前提是要确定行的内容) # 匹配行前加 sed -i '/allow/ideny' httpd.conf ... 
- sed详解---用法及解释
		1.sed -n '2'p filename 打印文件的第二行. 2.sed -n '1,3'p filename 打印文件的1到3行 3. sed -n '/Neave/'p filename 打印 ... 
随机推荐
- [iOS]通过xib定义Cell然后关联UICollectionView
			先新建一个View的xib,然后删掉自动生成的View,拖进一个UICollectionCell,再新建一个对应的UIView继承UICollectionCell类. OK,接下来该连outlet的就 ... 
- java Web jsp四大作用域和九大内置对象
			JSP中的四大作用域:page.request.session.application 这四大作用域,其实就是其九大内置对象中的四个,为什么说他们也是JSP的四大作用域呢?因为这四个对象都能存储数据, ... 
- PHP Liunx 服务安全防范方案
			PHP100平均每个月都会有入侵或者攻击,我们做了很多工作,当然很多高手们还是可以入侵,这我们并不感到奇怪,因为我们相信天外有天,人外有人,虽然 我们现在服务器还是稳定(高手们不要来喷了),我们把我们 ... 
- Oracle设置主键自增长
			第一步:为表设置主键 第二步:新建序列 CREATE SEQUENCE SQ.SEQ_INCREASE START WITH 12 MAXVALUE 999 MINVALUE 0 INCREME ... 
- c语言数组初始化 蛋疼
			一个一般性的结论 int a[100]={N}//N是一个大于等于0的整数 以上代码只会把a[0]初始化为N,其它内存单元都会被初始化为0 int a[100]={5} 这行代码它只会把a[0]初始化 ... 
- Django--form保存用户输入内容
			需求 用户提交form时,如果报错,页面中的用户信息还在(除了密码),没有被刷新掉,不用用户再次输入. 速查 views.py 1 2 3 def login(request): obj = ... 
- hdu 4279 Number(G++提交)
			打表找规律: #include<stdio.h> #include<math.h> #define N 250 bool judge(int i,int j) { ;k< ... 
- My First JS Page
			哗啦啦~我的处女作终于浮出水面了^ ^值得高兴一下,虽然参考了人家的代码.给我的感觉JS就是用来实现动态网页的,比如说弹出一个框框,然后调用JS,返回些东西. 1.打开新写好的页面a.html,弹出了 ... 
- js 清空 input[type=file]的值
			js 不能操作 input[type=file]但你可以将这个 input 的 dom 元素删除掉,再新增一个,或者替换掉 $("#UploadFile").replaceWith ... 
- keydown、input 和 keyup 事件
			keydown.keyup 属于键盘事件,input 属于文本事件. keydown:当用户按下键盘上的任意按键时触发,如果按住不放,会重复触发此事件. keyup:当用户释放键盘上的按键时触发. i ... 
