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

时间:2022-12-01 06:49:47

删除每行第一个字符

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