22

我的要求是将所有 .csv 文件附加到一个文件夹中,然后通过一封邮件发送。

这是尝试过的,

mutt -s "subject" -a *.csv -- abc@gmail.com < subject.txt

上面的命令不起作用(它不能识别多个文件)并抛出错误

Error sending message, child exited 67 (User unknown.).
Could not send the message.

然后我尝试使用多个-a选项,如下所示,

mutt -s "subject" -a aaa.csv -a bbb.csv -- abc@gmail.com < subject.txt

这按预期工作。 但这对于例如 100 个文件是不可行的。我应该可以将它与文件掩码一起使用(就像 *.csv 获取所有 csv 文件一样)。有什么方法可以像 *.csv 一样在单个命令中使用吗?

谢谢

4

3 回答 3

30

Mutt 不支持这样的语法,但这并不意味着它是不可能的。你只需要构建 mutt 命令。

mutt -s "subject" $( printf -- '-a %q ' *.csv ) ...

中的命令$( ... )产生如下内容:

-a aaa.csv -a bbb.csv -a ...
于 2013-06-27T12:02:44.240 回答
1

这是使用单个命令发送多个文件的示例 -

mutt -s "Subject" -i "Mail_body text" email_id@abc.com -c email_cc_id@abc.com -a attachment1.pdf -a attachment2.pdf 

在命令行末尾使用-a附件。

一些 linux 系统有附件大小限制。大多数情况下它支持较小的尺寸。

于 2021-03-04T18:36:33.883 回答
0

我得到反斜杠(\)另外

Daily_Batch_Status{20131003}.PDF
Daily_System_Monitoring{20131003}.PDF

printf -- '-a %q ' *.PDF
-a Daily_Batch_Status \ {20131003 \ }.PDF -a Daily_System_Monitoring \ {20131003 \ }.PDF
于 2013-10-03T20:14:40.680 回答