簡體   English   中英

使用mailx在電子郵件中發送多個文件作為附件

[英]sending multiple files as attachment in e-mail using mailx

我有一個requiremnet以外殼程序腳本的形式發送多個文件作為電子郵件attachmnet。 我用下面的命令。

(printf "%s\n" "BODY"; uuencode out.txt out.txt ; uuencode asgda.txt asgda.txt ) | mailx -m -s "TEST" emailid@domain.com

但是,我要作為Attachmnet發送的文件數是動態的。 所以我想將uuencode ... comand分配給一個變量,然后使用它。 我已經嘗試過以下方式,

$ ATTACH_CMD=$(echo `cat $OUTPUT_FILE`)
$ echo $ATTACH_CMD
uuencode out.txt out.txt ; uuencode asgda.txt asgda.txt

$ (printf "%s\n" "BODY"; $ATTACH_CMD ) | mailx -m -s "TEST" emailid@domain.com

而且我正在錯誤以下。

sh: uuencode out.txt out.txt ; uuencode asgda.txt asgda.txt:  not found.

有人可以幫我嗎? 提前致謝。

您是否嘗試過使用以下代碼? 不知道為什么它起作用,但是下面的代碼可以用作解決方法

(printf "%s\n" "BODY"; `echo $ATTACH_CMD` ) | mailx -m -s "TEST" emailid@domain.com`?

對於$ATTACH_CMD我使用了echo命令。

我終於找到了路。 評估使竅門

eval $STR 

$ ATTACH_CMD=$(echo `cat $OUTPUT_FILE`)
$ echo $ATTACH_CMD
uuencode out.txt out.txt ; uuencode asgda.txt asgda.txt

$ (printf "%s\n" "BODY"; eval $ATTACH_CMD ) | mailx -m -s "TEST" emailid@domain.com

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM