
Ich arbeite an einem Bash-Skript, mit dem ich GUI-Anwendungen remote auf einem Windows-Rechner über psexec ausführen kann, aber der psexec-Befehl scheint den Computernamen nicht richtig zu lesen. Es wird nur die Fehlermeldung „Das System kann die angegebene Datei nicht finden. PsExec konnte 192.168.1.3 nicht starten:“ ausgegeben.
#!/bin/bash
ssh [email protected] psexec \\192.168.1.3 -i 1 -s $1
Das Anmelden per SSH und Ausführen von psexec als eigenständiger Befehl in der Remote-Shell funktioniert einwandfrei, aber das hier funktioniert nicht.
Früher hat es mit vier Backslashes funktioniert (ich bin nicht sicher, was geändert wurde), aber jetzt kommt nur noch die Fehlermeldung „Das System kann die angegebene Datei nicht finden. PsExec konnte \192.168.1.3: nicht starten.“ Auch das Hinzufügen weiterer Backslashes hat nicht geholfen.
Antwort1
Gemäß den Kommentaren:
ssh [email protected] "psexec \\\\192.168.1.3 -i 1 -s $1"
oder
ssh [email protected] "psexec '\\192.168.1.3' -i 1 -s $1"
Der in einfache Anführungszeichen gesetzte Inhalt wird wörtlich interpretiert.