Użyj sendmaila bez standardowych danych wejściowych


1

Chciałbym użyć sendmaildo wysłania wiadomości e-mail z mojego oprogramowania do tworzenia kopii zapasowych w systemie Kubuntu Linux. Jednak oprogramowanie nie pozwala na wprowadzenie pełnego wiersza poleceń (tylko nazwa polecenia i wzorzec argumentów osobno). Dlatego nie mogę przekazać treści wiadomości e-mail do sendmailstandardowego wprowadzania.

Czy istnieje sposób dzwonienia sendmailbez standardowego użycia wejścia? Np. Przekazanie treści wiadomości przez parametr wiersza poleceń (a nawet w ogóle nie przekazanie treści)?


Prawdopodobnie można skłonić stdin do „pracy” w ten sposób: sh -c 'sendmail -oi -t < file.eml'
spawnując

Odpowiedzi:


1

Jasne, napisz skrypt powłoki, który to robi.

#!/bin/sh
sendmail -i "silicomancer@example.com" <<EOF
Date: ...
From: ...
To: ...
Subject: ...
Content-Type: text/plain; charset=utf-8

Yo, stuff happened ($*).
EOF

Chociaż może być lepiej użyć mail(inaczej Mail lub mailx lub s-nail) niż ręcznie wykonać wszystkie nagłówki.


Skrypt to ciekawy pomysł. Jednak użycie alternatywnego programu pocztowego wydaje się lepszym rozwiązaniem. „sendemail” działa dla mnie jak urok.
Silicomancer
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.