Der Datumsbefehl funktioniert auf dem Remote-Server nicht, wenn er mithilfe eines Skripts ausgeführt wird

Der Datumsbefehl funktioniert auf dem Remote-Server nicht, wenn er mithilfe eines Skripts ausgeführt wird

Ich führe den folgenden Befehl aus einem Skript von einem Remote-Server aus, erhalte jedoch eine FehlermeldungNo such file or directory

ssh -t -t [email protected] \"sudo mysql nss_mysql < /home/user/scripts/Db_nss_mysql-`date +%Y-%m-%d`.sql && /bin/bash /home/user/scripts/jenkin-soft.sh\"

Ich führe Folgendes aus bash jenkin-soft.shund der vollständige Fehler lautet:

jenkin-soft.sh: line 36: /home/user/scripts/Db_nss_mysql-`date +%Y-%m-%d`.sql: No such file or directory. 

Ich habe die folgenden Befehle ausprobiert und sie funktionieren ordnungsgemäß:

givinv@ser1:~/scripts$ ssh -t -t [email protected] "sudo mysql"
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 66

mysql> Bye
Connection to xx.xx.xx.xx closed.
givinv@ser1:~/scripts$ ssh -t -t  [email protected] "sudo ls /home/user/scripts/Db_nss_mysql-`date +%Y-%m-%d`.sql"
/home/user/scripts/Db_nss_mysql-2017-04-07.sql
Connection to xx.xx.xx.xx closed.
givinv@ser1:~/scripts$ 

Was mache ich falsch?

Antwort1

Hier ist Ihr Zitieren fehlerhaft, oder eher das Fehlen davon. Denn wenn Sie schreiben: \"sudo ....\" zitiert nicht Ihren String, sondern dieses eine Anführungszeichen "

ssh -t -t [email protected] 'sudo mysql nss_mysql < /home/user/scripts/Db_nss_mysql-`date +%Y-%m-%d`.sql && /bin/bash /home/user/scripts/jenkin-soft.sh'

verwandte Informationen