免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: amio555
打印 上一主题 下一主题

sed删除由空格组成的空行 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2008-07-13 17:13 |只看该作者
sed 's/^[[:blank:]]\+//'

论坛徽章:
0
12 [报告]
发表于 2008-07-13 17:49 |只看该作者
原帖由 walkerxk 于 2008-7-13 17:13 发表
sed 's/^[[:blank:]]\+//'



sed "s/^ *//g"   

两个有什么不同吗?

论坛徽章:
0
13 [报告]
发表于 2008-07-13 18:28 |只看该作者

  1. [[:blank:]]\+  代表一个或多个连续的空白符,比如TAB符,空格等

  2. * 表示不定个数的连续的空格

  3. 它们的区别自己领会

  4. s/.../.../ 只替换第一次匹配的内容

  5. s/.../.../g 表示对模式空间的所有匹配的内容进行替换

  6. 不过,对于s/^.../../g中这个g是多此一举,因为匹配模式只可能发生一次

复制代码

[ 本帖最后由 springwind426 于 2008-7-13 18:30 编辑 ]

论坛徽章:
0
14 [报告]
发表于 2008-07-13 20:22 |只看该作者
原帖由 springwind426 于 2008-7-13 18:28 发表

[[:blank:]]\+  代表一个或多个连续的空白符,比如TAB符,空格等

* 表示不定个数的连续的空格

它们的区别自己领会

s/.../.../ 只替换第一次匹配的内容

s/.../.../g 表示对模式空间的所有匹配的内 ...

还有*和+的区别,*是0-任意次,+是1-任意次,+在sed里面一般需要转义成\+。

论坛徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年纪念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役纪念章
日期:2022-04-24 14:33:24
15 [报告]
发表于 2008-07-14 11:04 |只看该作者

回复 #12 amio555 的帖子

在Unix下可以成功的代码,在Windows下可能会失败,呵呵。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP