首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在sendmail.mc文件中"dnl“和"dnl #”有什么区别?

在sendmail.mc文件中"dnl“和"dnl #”有什么区别?
EN

Server Fault用户
提问于 2014-02-08 05:17:43
回答 2查看 16.6K关注 0票数 15

dnldnl #/etc/mail/sendmail.mc文件中有什么区别?如果我想做点什么,前面需要做什么?同样,如果我想“注释掉”某件事,我需要什么前缀?

例如:

代码语言:javascript
复制
dnl # masquerade not just @mydomainalias.com, but @*.mydomainalias.com as well
dnl #
dnl FEATURE(masquerade_entire_domain)dnl
dnl #
dnl MASQUERADE_DOMAIN(localhost)dnl
dnl MASQUERADE_DOMAIN(localhost.localdomain)dnl
dnl MASQUERADE_DOMAIN(foo.com)dnl
dnl MASQUERADE_DOMAIN(foo2.lan)dnl
MAILER(smtp)dnl
MAILER(procmail)dnl
dnl MAILER(cyrusv2)dnl
EN

回答 2

Server Fault用户

发布于 2018-06-04 21:20:18

DNL的意思是“通过换行符删除”,意思是“忽略'dnl‘之后的一切直到下一行”。

"dnl #“只是人为的命名。当sendmail.mc文件第一次开发时,他们想让你知道任何"dnl .“是一个被注释掉的命令/设置,以及任何"dnl #.“实际上是一个描述性的注释,它不是可以取消注释的命令/设置,因为'#‘经常在行的开头使用,以表示“行尾后的内容”是注释。

票数 4
EN

Server Fault用户

发布于 2022-01-26 19:29:25

是的,8岁了,没人会读这篇文章,但我只想指出,把两位dnls放在一条线上是完全没有意义的。它不像上面所建议的那样“抑制sendmail.cf输出中的额外空行”。

既然一幅画值一千字:

代码语言:javascript
复制
$ m4 <<EOF 
Line 1
dnl Line 2 
Line 3
dnl Line 4 dnl
Line 5
# Line 6
Line 7
dnl # Line 8
Line 9
EOF

产生这个输出:

代码语言:javascript
复制
Line 1
Line 3
Line 5
# Line 6
Line 7
Line 9
票数 3
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/574115

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档