echo $begrüßung;
kann mir jemand sagen, was daran falsch ist?
/usr/bin/mysql -u root -pcat /xxx/mysql.conf
--database=mysql --execute="UPDATEuser
SETPassword
= OLD_PASSWORD('xxx') WHEREHost
= 'localhost' ANDUser
= 'root' LIMIT 1;"
Du gibst der Shell einmal die Backticks mit der Bedeutung "führe den darin eingeschlossenen Befehl aus" und ein anderes Mal als an das aufzurufende Programm zu übergebene Daten. Innerhalb von mit "" eingefassten Strings verlieren die Backticks die erstgenannte Bedeutung nur, wenn sie mit einem \ maskiert werden.
Alternativ könnte man statt der doppelten die einfachen Anführungszeichen verwenden, dann findet kein weiteres Auswerten von Zeichen statt. Allerdings hast du diese Zeichen auch als Bestandteil der Daten und ein Escaping gibt es innerhalb von ''-Zeichenketten nicht. In deinem Fall ist diese Alternative also nicht anwendbar.
echo "$verabschiedung $name";