免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5182 | 回复: 3
打印 上一主题 下一主题

sed [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-02-25 18:55 |只看该作者 |倒序浏览

sed









sed(意为流编辑器,源自英语“stream editor”的缩写)是Unix常见的命令行程序。sed 用来把文档或字符串里面的文字经过一系列编辑命令转换为另一种格式输出。sed 通常用来匹配一个或多个正则表达式的文本进行处理。

分号(;)可以用作分隔命令的指示符。尽管sed脚本固有的很多限制,一连串的sed指令加起来可以编程像 仓库番、快打砖块、甚至俄罗斯方块等电脑游戏的复杂程序。



常用的sed命令
■/模式/p - 印出所有匹配“模式”的行
■/模式/d - 删除所有匹配“模式”的行
■s - 替换字符串
■s/模式/替换文字/ - 将匹配“模式”的行转换成“替换文字”
■s命令预设只替换每行匹配的第一串文字,也就是说,若每行里有多个匹配该模式的字符串,后面的将不会被s转换。在这个情况可以用g命令来替换所有匹配的文字,如下:
■s/模式/替换文字/g - 将所有匹配“模式”的字符串转换成“替换文字”

命令行选项
■-f - 按照指定的sed脚本里面的命令来进行转换
■-i - 表示将转换结果直接插入文件中(若不用-i,一般sed命令不会改变原文档里的内容,而只会输出到命令行。当然命令行输出的内容也可以用“>”转存到另外一个文件里。)
■-e - 表示在e后面的文字是正则表达式。有的版本不需要加注e选项也同样可以在命令中使用正则表达式。

其他命令
■sed G - 在每一行后面增加一空行
■sed 'G;G' - 在每一行后面增加两行空行

论坛徽章:
0
2 [报告]
发表于 2012-02-25 18:55 |只看该作者
谢谢分享

论坛徽章:
0
3 [报告]
发表于 2013-12-01 17:09 |只看该作者
学习了.最近要用sed和awk,期待经典扫盲贴链接

论坛徽章:
16
IT运维版块每日发帖之星
日期:2015-10-02 06:20:00IT运维版块每月发帖之星
日期:2015-09-11 19:30:52IT运维版块每周发帖之星
日期:2015-09-11 19:20:31IT运维版块每日发帖之星
日期:2015-08-26 06:20:00每日论坛发贴之星
日期:2015-08-20 06:20:00IT运维版块每日发帖之星
日期:2015-08-20 06:20:002015年辞旧岁徽章
日期:2015-03-03 16:54:15金牛座
日期:2014-05-04 16:58:09双子座
日期:2013-12-17 16:44:37辰龙
日期:2013-11-22 15:20:59狮子座
日期:2013-11-18 22:55:08射手座
日期:2013-11-12 10:54:26
4 [报告]
发表于 2013-12-01 20:43 |只看该作者
shell 13问加sed awk 101完全让你成为高手
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP