linux入门笔记30.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
linux入门笔记30

SED sed是一种新型的流编辑器。相当于grep和vi的组合,既能找到相关信息,同时也能根据需要修改信息; 这个同样不会对源文件进行任何改动,除非你使用特定的选项来说明; 原理: 将源文件调入内存,然后,根据sed提供的正则表达式进行相应的判度,然后,将结果输出到终端; 同样也是以行为单位的输入,以行为单位的输出; sed基本命令格式: sed -选项 /正则表达式/命令  文件列表 sed /root/p /etc/passwd 注意:sed默认会将输入原样输出,除非明确指定不输出不符合要求的输出; sed选项: -n 关闭默认输出 -e 指定执行动作 -f 指定sed脚本的名字 -i 实现对源文件的实时修改 -i.bak sed -i.bak 1d num.txt ls num.txt.bak sed命令: 除了-i 不改变源文件 p 打印命令:将匹配的行,打印一次 # sed -n /north/pdatafile 只打印出匹配行 # sed /north/p datafile 匹配行输出两次 d 删除命令:将匹配的行,删除掉只对源文件来说 #sed 1d datafile 删除第一行 定址: 删除第一行和第三行 # sed -e 1d -e3d datafile # sed 1d;3d datafile ; 表示命令的分割 删除第一行到第三行 #sed 1,3ddatafile 从第五行删除到最后一行 #sed 5,$ddatafile 删除所有包含关键字的行: # sed /north/ddatafile s 替换命令 # seds/west/north/ datafile # seds/west/north/g datafile 表示一行当中,存在多个匹配项,那么全部置换 # sed -ns/\([[:space:]][1-9][0-9]\)/\1.5/gp datafile # sed -ns/\([^.][1-9][0-9]\)/\1.5/gp datafile # sed -ns/[1-9][0-9]$/.5/gp datafile 表示前面的匹配内容 在每一行的末尾加上一个.5 #sed s/$/.5/datafile # seds/.*/.5/g datafile 每一行的行首添加一个* #sed s/^/*/datafile date +%y/%m/%d|sed s/\//:/g # date+%y/%m/%d |sed s#/#:#g s命令的分割符号/ ,可以替换成其他任意字符 r 读文件命令 将另外一个文本文件的内容读进来 sed /north/r/tmp/number datafile sed /north/R/tmp/number datafil 每次读入文本文件的一行,就是说第一次的匹配的时候,读入文本的第一行,第二次匹配的时候,输入文本的第二行。。以此类推 w 写文件命令 将匹配的行,输出到另外一个文件里面去 # sed -n/north/w /tmp/newdata datafile a 追加命令 # sed /Suan/a \ Suan has retired. \ She will go backlater. \ see her later datafile i 插入命令 #sed /Suan/i 1234567 datafile 在匹配行的上面插入字符串 c 修改命令 # sed /Suan/c Suan has retired.datafile 将匹配行,全部替换成你的输入文本; n 直接对匹配下一行操作 # sed -n /Suan/{n;p} datafile y 转换命令 tr # sed 1,3y/abcdefg/ABCDEFG/ datafile 第一行第三行大小写替换 q 退出命令遇到匹配条件,sed退出 #sed /Suan/qdatafile sed的两种内存空间 PATT 模式空间 HOLD 保留空间 都是sed的内存空间: PATT是sed用来对输入行进行编辑,处理的内存空间 HOLD是sed用来保存已经处理过的输入行的空间 注意:HOLD空间里默认存在一个空行 h 将PATT空间里的内容,复制到HOLD空间,会取代原来HOLD空间里的内容 H 将PATT空间里的内容,追加到HOLD空间,原来的内容依然保留 g 将HOLD空间的内容,取回到PATT空间,取代原来PATT空间的内容 G 将HOLD空间的内容,追加到PATT空间,原来的内容依然保留 x 将HOLD空间和PATT空间的内容,交换 cat num.txt 1111111111111111111 222222222222222 333333333333333 将第一行的内容,复制到第三行:

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档