在unix shell脚本中发送邮件时需要重命名附加的文件名

时间:2015-08-04 14:10:18

标签: shell unix

mail -s "$ENV : $REPORT_NAME Report for $BUSINESS_DATE " -a "$FILE_NAME" $EMAIL_ID

我有这个命令在shell脚本中工作正常,现在我的要求是重命名附件。

假设文件名为A.txt 想发送B.txt

请帮助我获得指挥。

1 个答案:

答案 0 :(得分:0)

mail没有任何选项可以使用其他名称附加文件。因此,您可以重命名文件或将其复制到临时文件并发送:

cp "$FILE_NAME" /tmp/B.txt && FILE_NAME="/tmp/B.txt" && \
mail -s "$ENV : $REPORT_NAME Report for $BUSINESS_DATE " -a "$FILE_NAME" $EMAIL_ID && \
rm -f /tmp/tmp/B.txt

或者您可以移动原始文件,如果您不需要保留其名称:

mv "$FILE_NAME" /tmp/B.txt && FILE_NAME="/tmp/B.txt" && \
mail -s "$ENV : $REPORT_NAME Report for $BUSINESS_DATE " -a "$FILE_NAME" $EMAIL_ID