用sed修改配置文件

通过模式定位到指定的配置项,对相应行进行整行替换实现对配置文件的修改,不过这样行后注释也会被替换掉,但目前sed不支持零宽断言的正则表达式语法,无法对特定位置进行定位修改,所以在修改配置文件的时候用c进行整行替换比s作模式替换来得更实际.

文件内容如下

# Options to syslogd
# syslogd options are deprecated since rsyslog v3
# if you want to use them, switch to compatibility mode 2 by "-c 2"
SYSLOGD_OPTIONS = "-c 4"   #commet

 

SYSLOGD_OPTIONS的值改为"-r -m 0"可这样写命令

 

opt='SYSLOGD_OPTIONS'

sed  "/^\s*$opt[[:space:]]*=/c $opt=\"-r -m 0\"" rsyslog

 

输出的内容为

 

# Options to syslogd
# syslogd options are deprecated since rsyslog v3
# if you want to use them, switch to compatibility mode 2 by "-c 2"
SYSLOGD_OPTIONS="-r -m 0"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值