我正在尝试使用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的方法,这样可以将文件与邮件正文分开附加。

08-04 16:25