使用shell脚本在电子邮件中附加一个html文件

时间:2012-08-13 05:27:15

标签: linux bash shell sunos mailx

我通过使用以下命令发送电子邮件,将所有输出和发送结合在一封电子邮件中。它对我来说很好。

mailx -s "LIP Data Quality Report for $DATE_YEST_FORMAT1" -r rj@host.com rj@host.com <<EOF
Data Successfully loaded into LIP_DATA_QUALITY table

Total Items Purchased: `echo $QUERY1 | awk '{print $1}'`

Total Items MissingorMismatch: `echo $QUERY1 | awk '{print $2}'`

Error Percentage: $QUERY2
EOF

现在我需要在上面的电子邮件中附加一个文件,该文件位于temp folder下,名称为chart。在发送时我需要将其作为chart.html文件发送。

那么如何修改我的上述命令,以便它可以chart chart.html filetemp folder附加电子邮件中的SunOS

希望我对大家都清楚。我正在运行mailx -s "LIP Data Quality Report for $DATE_YEST_FORMAT1" -r rj@host.com rj@host.com <<EOF uuencode /tmp/chart chart.html Data Successfully loaded into LIP_DATA_QUALITY table Total Items Purchased: `echo $QUERY1 | awk '{print $1}'` Total Items MissingorMismatch: `echo $QUERY1 | awk '{print $2}'` Error Percentage: $QUERY2 EOF

任何建议都将受到赞赏。

更新: -

如果我需要在我的shell脚本中添加uuencode命令,那么它应该如下所示?或其他什么

{{1}}

3 个答案:

答案 0 :(得分:1)

apt-get install sharutils

其中run.sh是附件,hello是消息

(echo "hello"  ; uuencode run.sh run.sh ) | mailx -s "Testing 2" root@localhost



EMAILCONTENT="Data Successfully loaded into LIP_DATA_QUALITY table \n Total Items Purchased: `echo $QUERY1 | awk '{print $1}'`\n Total Items MissingorMismatch: `echo $QUERY1 | awk '{print $2}'`\n Error Percentage: $QUERY2 \n"
(echo $MAILCONTENT ; uuencode /tmp/chart chart.html ) | mailx -s "Testing 2" root@localhost


 ### OR
FILE="/tmp/email.content"
echo -e "Data Successfully loaded into LIP_DATA_QUALITY table \n Total Items Purchased: `echo $QUERY1 | awk '{print $1}'`\n Total Items MissingorMismatch: `echo $QUERY1 | awk '{print $2}'`\n Error Percentage: $QUERY2 \n" > $FILE 
(cat $FILE ; uuencode /tmp/chart chart.html ) | mailx -s "Testing 2" root@localhost

答案 1 :(得分:0)

你可以使用一个更通用的邮件用户代理,例如来自http://www.cleancode.org/projects/emailemail本地管理附件

答案 2 :(得分:0)

对shell脚本的最不必要的更改是

`uuencode /tmp/chart chart.html`

(在 here document 中插入uuencode的命令替换的反引号)。