Verwenden Sie sendmail ohne Standardeingabe

803
Silicomancer

Ich möchte sendmaileine E-Mail von meiner Backup-Software unter Kubuntu Linux versenden. Die Software erlaubt jedoch nicht die Eingabe einer vollständigen Befehlszeile (nur Befehlsname und Argumentmuster separat). Aus diesem Grund kann ich den E-Mail-Text nicht sendmailmit der Standardeingabe übergeben.

Gibt es eine Möglichkeit sendmailohne Standardeingabe zu telefonieren ? ZB den Nachrichtentext per Kommandozeilenparameter übergeben (oder gar keinen Body übergeben)?

1
Möglicherweise können Sie stdin auf diese Weise "arbeiten": indem Sie eine Shell mit den Umleitungen innerhalb des Arguments erzeugen: "sh -c" sendmail -oi -t <file.eml "" glenn jackman vor 8 Jahren 0

1 Antwort auf die Frage

1
grawity

Sicher, schreibe ein Shellscript, das dies tut.

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

Obwohl es vielleicht besser ist, sie zu verwenden mail(alias Mail oder mailx oder s-nail), als alle Header manuell zu handhaben .

Das Skript ist eine interessante Idee. Die Verwendung eines alternativen Mail-Programms scheint jedoch die bessere Lösung zu sein. 'sendemail' wirkt für mich wie ein Zauber. Silicomancer vor 8 Jahren 0