Jak poslat mail s přílohou z terminálu

Poslání mailu z terminálu je snadné, například s utilitou mailx:

~# echo  "Obsah testovaciho mailu" | \
 mailx -s "Predmet testovaciho mailu" david@karban.eu

S přílohama je to složitější. SMTP protokol dokáže v příloze přenést pouze 7bitové znaky (jen základní abecedu, bez háčků a čárek). Abychom dokázali cokoliv poslat, musíme to nejprve překódovat. To pro nás udělá utilita uuencode. Ta používá 2 parametry, samotný soubor k překódování a jméno, které půjde vidět v mail klientu. Název souboru a jméno pro mail klienta jsou navzájem nezávislé, příkaz:

~# uuencode /var/log/apache2/access.log log_apache.txt

pošle v příloze log webserveru apache „access.log“, ale příjemce v mailu uvidí přílohu „log_apache.txt“. Je-li  příjemce na platformě windows, otevře pak soubor jednodušeji.

Když spojíme obě části dohromady, vznikne nám:

~#(
 echo "Obsah testovaciho mailu"
 uuencode /var/log/apache2/access.log log_apache.txt
 ) | mailx -s "Predmet testovaciho mailu s prilohou" david@karban.eu;

A mail je na cestě i s přiloženým log souborem.

Komentování je uzavřeno.