我正在尝试运行ksh脚本,该脚本通常位于aix机器的新主机linux节点上。
我运行的代码如下所示:

 (uuencode $path/info.dat info.csv; uuencode $RESULTS results.log) | mail -s "Info" $MAIL_RECIPIENTS

这通常会发送主题为“info”的电子邮件,并包含附件info.csv和results.log。
但是在我的Linux机器上,这并没有发生——它发送的电子邮件的主体是uuencode输出,没有附件:
begin 775 info.csv

M+3`U+C`S+C4S+C(Q-#`W."(L(D%55$]314Y$("`B+")!551/4T5.1"`@(BPB
etc..
etc...
end

begin 775 results.log
M+3`U+C`S+C4S+C(Q-#`W."(L(D%55$]314Y$("`B+")!551/4T5.1"`@(BPB
etc...
etc...
end

我试图将文件作为附件发送而不使用uuencode:
mail -a info.csv -a results.log -s "Info" $MAIL_RECIPIENTS

但这是在脚本中间调用的,除非我控制d,否则它将挂起。
这是我正在使用的uuencode版本:
uuencode (GNU sharutils) 4.7
Copyright (C) 1994, 1995, 1996, 2002, 2005, 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

还有人经历过吗?恐怕不可以吃羊肉。

最佳答案

由于电子邮件的正文是空的,无论如何,我可以这样做,以停止等待EOT的邮件实用程序挂起。

mail -a info.cvs -a results.log -s "Info" $MAIL_RECIPIENTS < /dev/null

关于linux - 使用mailx和uuencode发送附件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24303201/

10-11 00:53