Hallo,
ich möchte innerhalb eines Skriptes per ssh auf einem anderen Rechner mehrere Befehle ausführen (PubKeyAuth ist eingerichtet). Die Probleme treten bei der Verwendung von "[" und "]" zum Testen auf und beim Zusammenfassen mehrerer Kommandos per "{" und "}".
Mein Aufruf z.B.
Code:
user1@host1:~# ssh -luser2 host2 "[ -r 'dir' ] || { mkdir dir; chmod 700 dir; }"
[: Command not found.
{: Command not found.
chmod: failed to get attributes of `gaga': No such file or directory
}: Command not found.
user1@host1:~#
Führe ich das den Befehl aber direkt auf host2 aus, funktioniert alles perfekt:
Code:
user2@host2:~# [ -r 'dir' ] || { mkdir dir; chmod 700 dir; }
user2@host2:~#
Aus irgendwelchen Gründen will er die Klammern als Befehle interpretieren, und ich komm nicht dahinter, was das soll.
Bitte helft mir
gruß Chris
Lesezeichen