我知道这个脚本将发送到电子邮件中,并且有一个主题,收件人和发件人。我的问题是,任何人都可以很好地解释一下这个脚本中"-- -f"的用途是什么?
echo "Hello World" > output.tmp
SUBJECT="SEND"
EMAIL=mymail@example.com
mail -s "$SUBJECT" "$EMAIL" -- -f frommail@example.com <output.tmp
将
-f
选项传递给 Sendmail 会设置信封发件人(如果您的 Sendmail 配置为允许此覆盖)。
了解信封和标题之间的区别需要对 SMTP 有所了解,但二十个单词的摘要是您可以控制最终Return-Path:
的内容,从而控制退回邮件将发送到何处。
mail
内部调用 Sendmail,并且编写为将特殊选项--
理解为停止解析剩余选项并逐字传递给 Sendmail 的标记。 这不是一个通用的约定,而是一个相当常见的包装器安排,它做一些简单的事情,然后将控制权传递给复杂的后端工具。