marabunta
Goto Top

Bash Mail senden

Hallo,

ich versuche eine einfache Mail mittels Bash zu verschicken.
 
sendmail() {
     echo $1,$2,$3
     $mailtext="$1"  
     $mailsubject="$2"  
     $mailbody="$3"  
     echo "$mailbody" > mailbody.txt  
     cat mailbody.txt | mailx -s $mailsubject -r from@me.com to@you.com
 }
root@test$ sendmail 'a' 'b' 'c'  
a,b,c
-bash: =a: command not found
-bash: =b: command not found
-bash: =c: command not found
Die mailbody.txt ist leer.

Auch mit sinnvollen Parametern kann er nichts mit dem Befehl anfangen. Woran kann das liegen?

Vielen Dank!

Content-Key: 334766

Url: https://administrator.de/contentid/334766

Ausgedruckt am: 28.03.2024 um 19:03 Uhr

Mitglied: sabines
sabines 10.04.2017 um 16:12:16 Uhr
Goto Top
Moin,

man sendmail liefert wahrscheinlich auch nichts zurück, oder?
Schon mal mail statt sendmail versucht?

Gruss
Mitglied: SlainteMhath
Lösung SlainteMhath 10.04.2017 um 16:13:54 Uhr
Goto Top
Moin,

Zeilen 4, 5, 6:
Das "$" vor der Variablen muss weg...
mailtext="$1"   
nicht
$mailtext="$1"   

(Mal abgesehen davon das die 3 Zeilen eh obsolet sind...)

lg,
Slainte
Mitglied: Marabunta
Marabunta 10.04.2017 aktualisiert um 16:18:39 Uhr
Goto Top
Ich wüsste gern, was ich an der Stelle erwarte. Vielleicht ändert sich das, wenn ich mich mehr in Bash auskenne.

Vielen Dank, das Problem ist gelöst.
Hab wieder PowerShell mit Bash durcheinander gebracht.
Mitglied: Lochkartenstanzer
Lochkartenstanzer 10.04.2017 um 21:21:06 Uhr
Goto Top
Du solltest die funktion nicht sendmail nennen weil das mit dem sendmail vom system kollidiert.

lks
Mitglied: SlainteMhath
SlainteMhath 11.04.2017 um 08:48:54 Uhr
Goto Top
Ich wüsste gern, was ich an der Stelle erwarte.
Äh.. wie meinen ?! O.o

Du solltest die funktion nicht sendmail nennen weil das mit dem sendmail vom system kollidiert.
Dem kann ihc nur beipflichten.
Mitglied: Lochkartenstanzer
Lochkartenstanzer 11.04.2017 um 09:47:41 Uhr
Goto Top
Zitat von @Marabunta:

Auch mit sinnvollen Parametern kann er nichts mit dem Befehl anfangen. Woran kann das liegen?

Was soll der derste Parameter eigentlich tun? einfach nur einen Platz freihalten? so wie ich das sehe, wird "mailtex" überhaupt nciht benutzt.

lks
Mitglied: Marabunta
Marabunta 12.04.2017 um 16:33:23 Uhr
Goto Top
Die funktion wird umbenannt.
der erste parameter ist nutzlos und wurde entfernt.