Отправка 13 МБ base64 по электронной почте создает дополнительные 19 МБ .com

Отправка 13 МБ base64 по электронной почте создает дополнительные 19 МБ .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 автоматически создает второе вложение на 6 МБ больше в .comформате (судя по всему). Это второе нежелательное вложение называется noname:

резервная копия gmail 2 вложения.png

1).Как я могу предотвратить nonameсоздание?

2).Если создание непредотвратимо, как я могу удалить их массово с помощью API Gmail?

решение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

Связанный контент