Ein kleines Snippet, um Mails mit Anhang via „mail“-Befehl zu versenden.
Unter Debian und Ubuntu das Paket „sharutils“ installieren. Hiermit können Dateien für den Mail-Versand vorbereit werden:
sudo apt-get install sharutils
Das Format lautet: uuencode lokale_datei.any empfaenger_dateiname.any.
Die lokale Datei kann also unter anderem Namen versendet werden.
Hier ein paar Beispiele, angefangen mit dem einfachen Versenden einer Datei:
uuencode datei.jpeg datei.jpeg | mail empfaenger@domain.tld
Mit Nachricht – alternativ: „echo“:
(cat Nachricht; uuencode datei.jpeg datei.jpeg) | mail empfaenger@domain.tld
Mit Absender und Betreff:
(cat Nachricht; uuencode datei.jpeg datei.jpeg) | mail -a "From: Absendername" -s "Betreff" empfaenger@domain.tld
Mit Absender, Betreff und UTF-8 Encoding („multiple header“):
(cat Nachricht; uuencode datei.jpeg datei.jpeg) | mail -a "`echo -e "Charset: UTF-8\nFrom: Absendername"`" -s "Betreff" empfaenger@domain.tld
Alternativen
Heute, dem 15.01.2014, möchte ich noch moderne Alternativen ergänzen, angefangen mit „mutt“, welches MIME-konform ist:
sudo apt-get install mutt
Beispiel mit Nachricht und Betreff:
echo "Nachricht" | mutt -s "Betreff" empfaenger@domain.tld -a datei.jpeg
Zweite Alternative mit „uuenview“ – Kann quasi alles, was „uuencode“ bietet, ist jedoch wie „mutt“ MIME-konform:
sudo apt-get install uudeview
Beispiel mit Nachricht und Betreff („-a“ für Eingabe der Nachricht via „stdin“:
cat Nachricht | uuenview -b datei.jpeg -m empfaenger@domain.tld -a
Wenn ich mir schon die Mühe gemacht habe ;-)
Pipen, anhängen … alles was der Admin so braucht mit mailx:
[Ubuntu 12.04 – 14.04] Mail versenden in der bash mit mailx (früher nail) – done right
http://forum.ubuntuusers.de/topic/ubuntu-12-04-14-04-mail-versenden-in-der-bash-/?highlight=mailx#post-6265947
Gruß
Super, danke. :)