Это команда mime-constructp, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
mime-construct - создавать и опционально отправлять сообщения MIME по почте
СИНТАКСИС
пантомима переключатель...
Извините, сложно дать содержательный синопсис. См. Примеры.
ОПИСАНИЕ
пантомима создает и (по умолчанию) отправляет сообщения MIME. Это полностью управляемо
из командной строки, он предназначен для использования другими программами или людьми, которые действуют как
программ.
ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
Глобальный Настройки
--отлаживать
Включите отладку.
--Помогите
Покажи сообщение об использовании и умри.
--выход
Не отправляйте сгенерированное сообщение по почте, вместо этого распечатайте его на стандартный вывод. Это проигрывает --скрытая копия Информация.
--подчасть
Создайте подчасть, которая может использоваться в другом сообщении MIME, а не в верхнем уровне
Само сообщение MIME. Это включается --выход и меняет некоторую внутреннюю семантику a
немного. См. Примеры.
--версия
Распечатайте версию и успешно завершите работу, если это единственный аргумент. В противном случае распечатайте
версия и умри.
Главная заголовок
Эти аргументы добавляют текст в заголовок верхнего уровня сообщения или определяют, кому оно будет отправлено.
отправлено.
--скрытая копия адрес
Добавить адрес в список получателей. На самом деле это ничего не добавляет в заголовок,
конечно. Если вы на самом деле не отправляете сообщение (если вы используете --выход or
--подчасть) --скрытая копия не будет иметь никакого эффекта.
--cc адрес
Добавьте адрес в Cc: .
- встроенный в
Отправьте сообщение получателям, уже указанным в заголовке, в дополнение к тем
дан с --к, --ccи --скрытая копия. Это имеет смысл, если вы используете - заголовок переключиться на
добавь свой В: or Cc:. В этом случае вы, вероятно, не захотите использовать --к or --cc
потому что они будут создавать новые заголовки, а не добавлять к уже имеющимся в
сообщение.
Этот переключатель проходит -t перейти на sendmail (пантомима не пытается разбирать
заголовки, которые вы предоставляете), поэтому на самом деле он ничего не делает, если вы не отправляете
сообщение.
- заголовок ул
Добавьте произвольный текст в заголовок. В ул может быть что угодно, в том числе
несколько строк. Таким образом вы можете создавать недействительные сообщения. Если вы добавите пробел
В ул вы действительно испортите сообщение.
- составной ул
Это определяет тип и параметры составного содержимого. По умолчанию
"составной / смешанный". Не включайте "граничную" настройку, предоставленную мим
строить.
Ничего страшного, если вы укажете - составной типа, но сообщение оказывается одиночным
часть, предоставленный вами тип будет просто проигнорирован.
- прелюдия ул
Это добавляет ул к составному тексту вступления. Если вы укажете - прелюдия много раз
улs будут объединены.
Для этого текста нет значения по умолчанию. Мне кажется, что в наше время добавление
объяснение MIME в начале сообщения похоже на объяснение того, как использовать место
пряжка для людей, которые едут в самолете.
Ничего страшного, если вы укажете - прелюдия но сообщение оказывается одной частью,
предоставленная вами прелюдия будет просто проигнорирована.
--тема ул
Укажите тему сообщения.
--к адрес
Добавьте адрес в В: .
По частям заголовок
Эти переключатели управляют заголовками частей. Если сообщение оказывается не составным
они фактически добавляют данные в заголовок верхнего уровня.
Каждый из них применяется только к выходу следующей части. После вывода каждой части они
сбросить до значений по умолчанию. Нет смысла использовать их без следующего
часть, так пантомима будет шипеть и умереть, если вы попытаетесь это сделать.
--вложение имя
Это добавляет заголовок «Content-Disposition: attachment» с заданным имя как ценность
атрибута "имя файла". Это просто удобство, так как пантомима часто
используется для отправки файлов в виде вложений.
. --вложение имя не вызывает пантомима читать любые данные из файла
под названием имя! Он просто использует это имя в заголовке. Фактические данные, которые пойдут
в эту часть сообщения поступает один из выходных переключателей штатной части
(нижеприведенный).
Вы можете предпочесть использовать --file-attach переключатель, который читает из имяd файл.
- кодирование напишите
Это определяет тип кодировки, которую вы хотите использовать в этой части. Вы обычно не должны
однако используйте этот переключатель. Если этот переключатель не используется пантомима выберет
соответствующая кодировка.
Предоставленные вами данные еще не должны быть закодированы, пантомима закодирует это
в соответствии с напишите вы указываете здесь. Допустимые кодировки 7bit, 8bit, двоичный,
кавычко версия для печатии base64. Создать недопустимое сообщение MIME легко:
указав кодировку самостоятельно.
--part-заголовок ул
Добавьте произвольный текст в заголовок каждой части. В ул может быть что угодно,
включая несколько строк. Таким образом можно создавать недействительные сообщения. Если вы включите
пустая строка в ул вы действительно испортите сообщение.
--тип напишите
Укажите тип содержимого для этой части. Если вы не укажете --тип по умолчанию
"текст / обычный". В напишите поставляемый вами может содержать не только собственно тип, но и
параметры. Все это будет просто помещено в конец Content-Type: и
воткнул в шапку.
Вы можете предпочесть использовать --файл-авто or --file-attach переключатели, которые устанавливают
--тип автоматически на основе имени файла.
часть Результат
Эти переключатели добавляют данные в тело сообщения. Вы используете по одному из них для каждого
каждая часть составного сообщения (или только одна из них, если сообщение не должно быть
составной).
--файл путь
--файл-авто путь
--file-attach путь
--прикреплять путь
--нить ул
--тело ул
Используйте содержимое файла путь или буквальная строка ул как тело этой части.
--файл-авто заставляет Content-Type быть установленным на основе имени файла, если это возможно.
--file-attach делает это и устанавливает --вложение имя тоже.
Обязательно включите завершающий символ новой строки ул если на самом деле не должно быть
Будь один. Если вы оставите завершающую новую строку вне строки, часть придется закодировать в
"base64" (потому что "quoted-printable" имеет искусственное ограничение, которое не позволяет
от возможности кодировать такой поток данных).
--прикреплять это псевдоним для --file-attachи --тело это псевдоним для --нить.
--subpart-файл путь
--subpart-строка ул
Используйте либо содержимое путь or ул себя как тело этой части, но относиться к нему
как подраздел. Это означает, что данные содержат как заголовки, так и текст. Это
также означает, что вы не можете использовать --тип or - кодирование для этой части.
Обычно путь or ул будет сгенерирован другим вызовом мим
строить который получил --подчасть переключатель.
Аргументы для переключателей, которые принимают имя файла (например, --файл и --subpart-файл) могу иметь
немного магии. Если нет файла с путь поставил обычный Perl открытый() сделано на
Это. См. «ПРИМЕРЫ».
ПРИМЕРЫ
В примерах предполагается, что $ nl содержит новую строку. Другие используемые переменные, я надеюсь,
не требует пояснений.
Отправьте простое сообщение.
mime-construct --to "$ recip" --subject 'привет там' --string "$ body"
Отправить сообщение, которое читается со стандартного ввода.
удача | mime-construct --to "$ recip" --subject fortune --file -
Отправьте текстовую часть и прикрепите файл, указав тип содержимого файла и --вложение
имя автоматически.
mime-construct --to "$ recip" --subject "$ file" \
--string "Вот файл, о котором я вам говорил. $ nl" \
--file-attach "$ файл"
Большинство людей думают о вложениях как о составных сообщениях, но это не обязательно. Этот
генерирует zip-архив всех файлов в текущем каталоге и отправляет их как вложение
но как единое сообщение.
zip -q - * |
mime-construct --to "$ recip" --subject 'заархивированный каталог' \
--attachment dir.zip --type application / zip --file -
Вы можете использовать всю выразительность Perl's открытый() при построении имен файлов. Например,
вы можете запускать процессы XXX плохих примеров, нет имен файлов
mime-construct --to "$ recip" --subject "$ subject" \
--string "Вот те два файла, которые вам нужны. $ nl" \
--type application / x-gzip --attachment file1.gz --file 'gzip -c file1 |' \
--type application / x-gzip --attachment file1.gz --file 'gzip -c file2 |'
или читать из альтернативных файловых дескрипторов ("<& = 4" для чтения из файлового дескриптора 4) или
что бы ни. См. Руководство по perlopentut.
Вот пример использования отдельного вызова пантомима создать подраздел.
Это создает сообщение, которое состоит из двух частей на верхнем уровне. Первая часть - это какой-то текст,
вторая часть - дайджест. Сам дайджест представляет собой составное сообщение, содержащее
количество частей сообщения / rfc822.
msg_args =
для сообщения в $ msg_list
do
msg_args = "$ msg_args --type message / rfc822 --file $ msg"
сделанный
установить фнорд
для получателя в $ recip_list
do
установить "$ @" --bcc $ recip
сделанный
сдвиг
mime-construct --subpart --multipart multipart / digest $ msg_args |
мим-конструкт \
--header "Кому: Получатели дайджеста:; $ nl" \
--subject 'Foo digest' \
"$ @" \
--file "$ Introduction" \
--subpart-файл -
Вот как отправлять зашифрованные сообщения (составные / зашифрованные, как определено в RFC 1847).
Ты используешь пантомима "--subpart" для создания реального сообщения, которое вы хотите отправить (которое
может быть своего рода MIME-сообщением - нетекстовым, состоящим из нескольких частей, что у вас есть), затем зашифруйте это и
использовать другой пантомима составить и отправить составное / зашифрованное сообщение, которое
содержит это.
enc_type = application / pgp-encrypted
enc_params = "Версия: 1 $ nl"
mime-construct --subpart --file body --file-auto image.jpg |
gpg --encrypt --armor -r "$ recip" |
mime-конструкция --выход \
--to "$ recip" \
--subject "$ subject" \
--multipart "multipart / encrypted; protocol = \" $ enc_type \ "" \
--type "$ enc_type" \
--string "$ enc_params" \
--type приложение / октет-поток \
--файл -
Используйте mime-constructp в Интернете с помощью сервисов onworks.net