You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用sed修改/etc/mail/sendmail.cf配置未生效,求助解决方案

解决sed替换sendmail.cf配置项未生效的问题
  • 问题根源:你原命令里的$w是shell环境变量,执行时会被shell自动解析替换成当前主机名,导致sed实际匹配的是#Dj[你的主机名].Foo.COM,而非文件里的#Dj$w.Foo.COM,自然匹配不到目标行。

  • 修复后的命令:
    方法一:对$进行转义,避免shell解析它:

    sed -i "/#Dj\$w.Foo.COM/c\Dj server.local.com" /etc/mail/sendmail.cf
    

    方法二:用单引号包裹匹配规则,单引号内的内容不会被shell解析:

    sed -i '#Dj$w.Foo.COM/c\Dj server.local.com' /etc/mail/sendmail.cf
    
  • 验证替换结果:执行完命令后,用以下命令检查是否生效:

    grep "Dj server.local.com" /etc/mail/sendmail.cf
    

    若输出对应的配置行,说明替换成功。

内容的提问来源于stack exchange,提问作者Aru Dubey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 01:36:30