Unix中的邮件功能会发送一个名为' eml'没有文件扩展名而不是另一台服务器中的预期zip文件

时间:2017-08-17 06:27:36

标签: shell unix mailx

我不确定这是否可以通过编程方式解决,但我有一个在测试服务器中正常工作的MailX shell脚本。但是当我在生产服务器中运行脚本时,收件人只会收到一个名为' eml'甚至无法打开。系统管理员告诉我,两台服务器的配置是相同的,我应该调整我的代码。 但我使用完全相同的shell脚本,它可以在测试服务器中运行。

cd /home/guava/autoemail

datediff=1
datetoday=$(date +%Y%m%d)
foldername=$(date --date="${datetoday} -${datediff} day" +%Y%m%d)

mv DEALS_ENTERED_TODAY_ALL_2OM_UP.xls DEALS_ENTERED_TODAY_ALL_2OM_UP_$foldername.xls
zip -P $foldername DEALS_ENTERED_TODAY_ALL_2OM_UP_$foldername.zip DEALS_ENTERED_TODAY_ALL_2OM_UP_$foldername.xls
cat /home/guava/autoemail/email_body.txt | mailx -s "AML_20M_DAILY_TRANSACTION_REPORT_GUAVA_$foldername" -a /home/guava/autoemail/DEALS_ENTERED_TODAY_ALL_2OM_UP_$foldername.zip ben@onionwank.com
rm DEALS_ENTERED_TODAY_ALL_2OM_UP_$foldername.xls
rm DEALS_ENTERED_TODAY_ALL_2OM_UP_$foldername.zip
它做了什么: -declares昨天的日期 - 使用昨天的日期对excel文件进​​行重新整理 - 使用密码压缩excel文件 - 将其发送给用户 - 删除使用过的文件。

我只想询问我的代码是否可以改进,以便我可以在生产服务器中使用它。为什么服务器会发送一个' eml'文件而不是我定义的附件?

这可能是服务器问题,但系统管理员似乎不知道该怎么做。

0 个答案:

没有答案