【问题标题】:Attach one html file in an email using shell script使用 shell 脚本在电子邮件中附加一个 html 文件
【发布时间】:2012-08-13 05:27:15
【问题描述】:

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

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 file 来自temp folder

希望我对每个人都清楚。我正在运行SunOS

任何建议将不胜感激。

更新:-

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

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

【问题讨论】:

标签: linux bash shell sunos mailx


【解决方案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

【讨论】:

  • 我刚刚用我使用uuencode command 的方式更新了我的问题,是否正确?任何想法将不胜感激。
  • 不,这是不正确的,因为您正在使用一个名为 EOF 的字符串执行 uuencode,您传递给它的正确方法是:(如上添加到此帖子的新内容)
【解决方案2】:

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

【讨论】:

    【解决方案3】:

    对你的 shell 脚本最不需要的改动是

    `uuencode /tmp/chart chart.html`
    

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

    【讨论】:

      猜你喜欢
      • 2016-08-10
      • 2011-02-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-20
      • 1970-01-01
      • 2022-01-25
      相关资源
      最近更新 更多