Chinaunix

标题: sed如何注释掉匹配行? [打印本页]

作者: lushy    时间: 2007-07-06 15:54
标题: sed如何注释掉匹配行?
比如一个文件内容如下:
aaa
bbb
cccc
ddd
用sed如何将包含了bbb的行前面加个#号注释掉?
注释之后,如何再将包含了bbb的行取消注释?
另:再问一个问题,如果用sed修改了/var/spool/cron/root中的内容,还需要进行什么操作令新的内容生效么?
作者: zhangkeyijian    时间: 2007-07-06 16:16

  1. sed 's/^bbb/#&/' file      加入&

  2. sed 's/^#\(bbb\)/\1/' file  删除&




  3. sed 中的-i参数好像可以
复制代码

[ 本帖最后由 zhangkeyijian 于 2007-7-6 16:18 编辑 ]
作者: lushy    时间: 2007-07-06 17:27
忘了说了,bbb的位置不固定,不一定在最前面。
作者: 寂寞烈火    时间: 2007-07-06 17:35
sed '/bbb/s/.*/#&/'
第二个可以重启一下crond,

[ 本帖最后由 寂寞烈火 于 2007-7-6 17:36 编辑 ]
作者: ksim    时间: 2007-07-06 17:39
sed '/bbb/s/^/#/'
作者: lushy    时间: 2007-07-07 20:49
谢谢楼上各位。搞定!




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2