Verwenden Sie sendmail ohne Standardeingabe


1

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

Gibt es eine Möglichkeit, sendmailohne Standardeingabe anzurufen ? ZB den Nachrichtentext per Kommandozeilenparameter übergeben (oder gar keinen Text übergeben)?


Sie können stdin wahrscheinlich dazu bringen, auf diese Weise "zu arbeiten": indem Sie eine Shell mit den Umleitungen innerhalb des Arguments sh -c 'sendmail -oi -t < file.eml'
erzeugen

Antworten:


1

Sicher, schreiben Sie 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

Es ist jedoch möglicherweise besser, mailalle Header (auch bekannt als Mail, Mailx oder S-Nail) von Hand zu erstellen.


Das Skript ist eine interessante Idee. Die Verwendung eines alternativen E-Mail-Programms scheint jedoch die bessere Lösung zu sein. "sendemail" wirkt für mich wie ein Zauber.
Silicomancer
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.