Unten ist ein Ausschnitt aus einem WordPress-Backup Bash-Skript über cron ausgeführt.Senden Sie E-Mail mit Dateianhängen als Bash-Array
do
file="$MDB/$db.$now.sql.gz"
mysqldump -u $USER -h $HOST -p$PASS $db | gzip -9 > $file
echo "Backup $file.....DONE"
echo "Database Backup of $file" | mutt -a "$file" -s "Database Backup File Attached" -- [email protected]
echo "Emailing $file.... DONE"
done
Beachten Sie in der E-Mail die Backups Teil. Die Dateien werden einzeln per E-Mail versandt, daher werden bei 10 Datenbanksicherungen 10 E-Mails gesendet.
Ich möchte die Dateien in einem Array in der for-Schleife sammeln, dann über mutt
, senden Sie eine einzige E-Mail mit allen Dateien als Anhang.
Wie kann es in Bash getan werden?
Ihre Schleife fehlt die erste Zeile, wahrscheinlich mit 'while'. Vermutlich setzt es den Wert von 'MDB',' db' und/oder 'now', so dass' Datei' jedes Mal einen anderen Wert durch die Schleife hat. – chepner