sed 实践案例 (不定期更新)

删除每行第一个字符

sed -r 's/^.//g' /etc/passwd

删掉每行第二个字符

sed -r 's/^(.)(.)/1/g' /etc/passwd

删掉每行最后一个字符

sed -r 's/.$//g' /etc/passwd

取消一行的注释

cat cas.properties | sed '/Oracle10gDialect$/ s/^#//g'

给某行增加注释

cat cas.properties | sed -r '/MySQLDialect$/ s/^(.)/#1/g'

在每行的最后增加文本

sed 's/$/& pass/g' cas.properties

 从某行开始 到之后的5行 都取消注释

sed -r '/^#?database.type=mysql$/,+5s/^#//g' -i cfg.db.deploy.properties

 修改被匹配行的下一行的内容 /matched_line/{n;s/xx/yy/g}

sed -r "/casServerUrlPrefix/{n;s/([0-9]{1,3}.){3}[0-9]{1,3}:([0-9]){2,5}/${cas_ip}:${cas_port}/}" -i $WebXML
原文地址:https://www.cnblogs.com/zhengwenqiang/p/6926090.html