我有一个包含以下内容的文件:
# pam_faildelay.so
auth required pam_faildelay.so delay=2000000
如果其中包含pam_faildelay,如何替换整行?所做的更改不应影响评论。
我尝试了以下命令,但它会更新注释。
sed -i '/pam_faildelay.so/c\auth optional pam_faildelay.so delay=4000000' filename
使用上述命令,我的文件如下所示:
auth optional pam_faildelay.so delay=4000000
auth optional pam_faildelay.so delay=4000000
答案 0 :(得分:1)
您替换不是以#
开头的行:
sed ' s/^[^#]*pam_faildelay\.so.*/auth optional pam_faildelay.so delay=4000000/' filename