Senden von E-mail in der bash-Skript literal \n, anstatt eine neue Zeile

Ich bin mit dem folgenden bash-Skript zum senden einer E-Mail

 #!/bin/bash

 recipients="[email protected], [email protected]"
 subject="Just a Test"
 from="[email protected]"

 message_txt="This is just a test.\n Goodbye!"

 /usr/sbin/sendmail "$recipients" << EOF
 subject:$subject
 from:$from
 $message_txt
 EOF

Aber wenn die E-Mail kommt der $message_txt Inhalt gedruckt wörtlich so :

 This is just a test.\n Goodbye!

Statt interpretieren die neue Zeile wie diese :

 This is just a test.
 Goodbye!

Habe ich versucht mit :

 echo $message_txt
 echo -e $message_txt
 printf $message_txt

Aber das Ergebnis ist immer das gleiche. Wo mache ich falsch?

Was mache ich falsch?

  • verwenden message_txt=$(echo -e 'this is just a test.\nGoodbye!')
  • Auch sollten Sie separate Kopfzeilen der Nachricht vom Körper, mit einer leeren Zeile
  • Danke, das hat funktioniert 😉
InformationsquelleAutor Grant | 2015-09-25
Schreibe einen Kommentar