sendmail配置文件中的`和'有什么区别?

What is the difference ` and ' in the sendmail configuration file?

我正在阅读一篇文章:
http://linuxconfig.org/configuring-gmail-as-sendmail-email-relay.

文章中间;

Put bellow lines into your sendmail.mc configuration file right above first "MAILER" definition line:

define(`SMART_HOST',`[smtp.gmail.com]')dnl
define(`RELAY_MAILER_ARGS', `TCP $h 587')dnl
define(`ESMTP_MAILER_ARGS', `TCP $h 587')dnl
define(`confAUTH_OPTIONS', `A p')dnl
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
FEATURE(`authinfo',`hash -o /etc/mail/authinfo/gmail-auth.db')dnl

我想知道 ` 和 ' 这里有区别吗?
为什么不写成

define('SMART_HOST','[smtp.gmail.com]')dnl
define('RELAY_MAILER_ARGS', 'TCP $h 587')dnl
define('ESMTP_MAILER_ARGS', 'TCP $h 587')dnl
define('confAUTH_OPTIONS', 'A p')dnl
TRUST_AUTH_MECH('EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define('confAUTH_MECHANISMS', 'EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
FEATURE('authinfo','hash -o /etc/mail/authinfo/gmail-auth.db')dnl

我觉得修改后的文件比较优雅,里面有对称性,两个'围成一个字符串,谁能表达一下?

而且换行确实可以运行,我测试过

Sendmail配置一般由m4.

处理

阅读GNU m4 documentation, in particular the section on quoting input