Не очень много ответов, но мне сказали, что размещение ответа в сообщении с вопросом неприемлемо.
В значительной степени решение было таким: «он начал работать, как и ожидалось». То есть «супер → «клавиатура» → нажмите «Клавиатура»», которую я пробовал раньше, но которая не удалась из-за того, что требуемая опция отсутствовала ранее, увенчалась успехом, потому что требуемая опция теперь присутствовала.
Я предлагаю вам отправить себе реальное электронное письмо с zip файл вложения и посмотрите на необработанное содержимое.
Вы обнаружите, что электронное письмо будет отформатировано в соответствии со стандартом MIME, который определяет, как включать различные форматы файлов в текстовое электронное письмо.
В вашем случае Content-typeверхнего уровня будет что-то вроде multipart/alternativeили multipart/mixed. Внутри него будут две или более частей или разделов со своим собственным Content-type.Один будет иметь тип application/zip. Раздел application/zipбудет иметь текстовую кодировку (например, Base 64) zip-файла.
Вот пример:
From: John Doe <example@example.com>
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="XXXXboundary text"
This is a multipart message in MIME format.
--XXXXboundary text
Content-Type: text/plain
this is the body text
--XXXXboundary text
Content-Type: text/html
<html>
...Body of email in HTML format...
</html>
--XXXXboundary text
Content-Type: application/zip;
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="test.zip"
BASE64 ENCODING TEXT HERE
--XXXXboundary text--
Дополнительная информация: Вложение файлов по электронной почте с использованием MIME
Вернемся к корню вашего вопроса, как это сделать? Я не знаком с какими-либо автономными инструментами, помогающими создать подобное электронное письмо, но я был бы удивлен, если бы вы не смогли найти что-то полезное. Возможно, один из почтовых клиентов поддерживает операции командной строки/массовые операции. Но в худшем случае это всего лишь текст ASCII, поэтому вы можете легко создать его вручную в соответствии с тем, что вы делаете с электронной почтой в формате HTML. Но я предлагаю вам создать сообщение во временном файле, прежде чем передавать его почтовому агенту. (Загляните в «Здесь документы», чтобы легко сохранять большие объемы текста.)
И, как указано, вам нужно будет преобразовать ваш zip-файл в Base 64. Почти каждая установка Linux должна иметь base64
. ] полезность или эквивалент. Просто передайте ему свой почтовый индекс и добавьте к своему файлу электронной почты в нужное время...
base64 test.zip >> my-email-file.txt