我正在尝试使用attach one file
在电子邮件正文中发送一些echo messages
。我有下面的命令,我已经把它们加在一起,uuencode不能正常工作,但我在我的电子邮件回显消息正确。
如何使uuencode在这里工作?我在这里做错了什么,我想是在把uuencode和mailx结合起来的时候?
(uuencode /tmp/chart.html percentage_graph.html) | mailx -s "LIP Data Quality Report for $DATE_YEST_FORMAT1" -r [email protected] [email protected] <<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
但是为了测试目的,如果我发出下面的命令来查看附件中是否有任何html文件,那么我会收到一封带有附件的电子邮件。
(uuencode /tmp/chart.html percentage_graph.html) | mailx -s "LIP Data Quality Report for $DATE_YEST_FORMAT1" -r [email protected] [email protected]
那么,当我把它们组合在一起时,我的第一个命令有什么问题?
最佳答案
mailx
命令可以从管道(uuencode)或heredoc(这可能对你有用:
$ mailx -s "LIP Data Quality Report for $DATE_YEST_FORMAT1" -r [email protected] [email protected] <<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
$(uuencode /tmp/chart.html percentage_graph.html)
EOF
或者,考虑使用类似于mutt的方法,这样可以将文件与邮件正文分开附加。