Используйте sendmail без стандартного ввода

731
Silicomancer

Я хотел бы использовать sendmailдля отправки электронной почты от моего программного обеспечения для резервного копирования на Kubuntu Linux. Однако программное обеспечение не позволяет вводить полную командную строку (только имя команды и шаблон аргументов отдельно). Вот почему я не могу передать тело письма с sendmailиспользованием стандартного ввода.

Есть ли способ звонить sendmailбез стандартного использования ввода? Например, передать тело сообщения по параметру командной строки (или даже вообще не передавать тело)?

1
Вероятно, вы можете заставить stdin «работать» следующим образом: создать оболочку с перенаправлениями внутри аргумента: `sh -c 'sendmail -oi -t <file.eml'` glenn jackman 8 лет назад 0

1 ответ на вопрос

1
grawity

Sure, write a shellscript that does so.

#!/bin/sh sendmail -i "silicomancer@example.com" <<EOF Date: ... From: ... To: ... Subject: ... Content-Type: text/plain; charset=utf-8 Yo, stuff happened ($*). EOF 

Though it might be better to use mail (aka Mail or mailx or s-nail) than hand-craft all the headers.

Сценарий интересная идея. Однако использование альтернативной почтовой программы на самом деле кажется лучшим решением. «Sendemail» работает как очарование для меня. Silicomancer 8 лет назад 0

Похожие вопросы