通过电子邮件发送 13MB base64 文件会产生额外的 19MB .com 文件

通过电子邮件发送 13MB base64 文件会产生额外的 19MB .com 文件

.tar.gz不久前,我必须将每日备份脚本更改为创建 base64 文件而不是常规文件:

Filename64="$Filename".64
cat "$Filename" | base64 > "$Filename64"
echo -e "to: $EmailAddr\nsubject: $Filename64\n" | \
    (cat - && uuencode "$Filename64" "$Filename64") | ssmtp "$EmailAddr"

最近我需要从每日备份中恢复一个文件。我惊讶地发现 gmail 会自动创建第二个附件,其.com格式大 6MB(显然)。这个第二个不需要的附件名为noname

gmail 备份 2 个附件.png

1).我怎样才能阻止noname创作?

2).如果无法阻止创建,我如何使用 gmail api 批量删除它们?

答案1

我使用了得票最多的答案中的说明:

建议:

echo -e "to: [email protected]\nsubject: subject\n"| (cat - && uuencode /path/to/attachment attachment.name) | ssmtp [email protected]

我做了一些新的研究,发现它似乎uuencode在 25 年前很流行,但现在却不那么流行了。bash 脚本的基本缺陷是uuencode将附件放在邮件正文中。

在这里找到了一个更好的方法:

mail已经使用过 Ubuntu 发行版中内置的程序:

mail -a "$Filename64" -s "$Filename64" "$EmailAddr" < /dev/null

相关内容