首页 > 解决方案 > Sendmail heredoc 在脚本中运行时不解析主题

问题描述

我正在运行以下命令:

sendmail [myself for testing] <<EOF
SUBJECT:New packages are available
[machine][directory] has new files for deployment.
EOF

如果我在 shell 中运行它,它可以正常工作并正确设置主题。但是,如果在脚本中运行相同的命令(复制粘贴),则将整个 heredoc 放入正文中,并且发送没有主题的电子邮件。

脚本环境有什么不同会导致这种情况发生吗?

编辑 - 如评论中所述,bash 脚本中有缩进。原始的 bash 脚本是:

sendmail [myself for testing] <<EOF
    SUBJECT:New packages are available
    [machine][directory] has new files for deployment.
EOF

修复方法是-在 EOF 中添加 a 并在主题后添加换行符:

sendmail [myself for testing] <<-EOF
    SUBJECT:New packages are available

    [machine][directory] has new files for deployment.
EOF

标签: bashsendmail

解决方案


推荐阅读