bash - 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
解决方案
推荐阅读
- reactjs - 与 MongoDB 的连接已打开
- spring-boot - Spring Boot 和 @Transactional(readOnly = true) 使用嵌套方法传播
- java - 我应该使用 cronjob 还是条带订阅(500 个活动)?
- apache-flink - flink 的 taskmanager 和 slot 在 yarn 上的平衡是什么
- node.js - 为什么使用 gRPC 进行微服务间通信?
- php - 写入数据库(php/mySQL)
- html - 如何创建两个可点击的相交图像?
- vba - 获取特定对象 vba 的库名称
- html - 使用 HTML、CSS 绘制三角形和形状
- c# - 如何使用 CRUD 功能创建连接到数据库的 Blazor WebAssembly 网站