Ich habe eine Liste mit 20 E-Mail-Adressen, die ich als mehrere Zeilen in einem Shell-Skript in eine Makrovariable einfügen möchte. Im „breiten“ Format funktioniert es einwandfrei und wird folgendermaßen angezeigt:
to_list="[email protected],[email protected],[email protected],[email protected]"
Ich möchte etwas wie das Folgende, habe aber Probleme mit den Anführungszeichen, Kommas und Zeilenumbrüchen:
to_list="[email protected],[email protected], \
.
.
.
[email protected],[email protected]"
Die Verwendung wird sein:
mail -s "Subject text here." $to_list < body_text.txt
Gemäß der Syntax sollten die E-Mails durch Kommas getrennt sein und nur die gesamte Liste sollte in Anführungszeichen gesetzt werden, wie im Breitformat gezeigt. Mein Test sendet jedoch nur E-Mails an die oberste Zeile. Ich freue mich über die Einsicht!
Antwort1
Sie möchten so etwas:
to_list=(
"[email protected],"
"[email protected],"
"[email protected],"
"[email protected]"
)
mail -s "Subject text here." "${to_list[@]}" < body_text.txt
Dabei wird ein Array verwendet, in dem Sie versucht haben, eine Zeichenfolge zu erstellen.