Befehl erwartet in Ubuntu

5617
CodZilla

Ich habe überall in SuperUser gesucht, konnte aber keine Lösung finden. Hier ist ein Skript, das für ssh verwendet wird expect. Ich verwende Ubuntu und habe erwartet installiert aptitude install expect.

#!/usr/bin/expect -f  spawn ssh user@server expect "Password:" send "mypassword\r" interact 

Beim Ausführen dieser Skriptdatei, sh script.sh, wird diese Fehlermeldung angezeigt.

test.sh: 3: spawn: not found couldn't read file "Password:": no such file or directory test.sh: 5: send: not found test.sh: 6: interact: not found 

Ich habe es mit diesen Beiträgen versucht, aber nicht funktioniert, Ubuntu 10.04 verwendet ssh ohne Eingabe meines Passworts

Vielen Dank,

1
Wie läuft das Skript genau? (Genau das, was Sie in der Befehlszeile eingeben.) Mat vor 10 Jahren 0
Ich benutze Benutzernamen, Servernamen und Passwort in der Datei selbst. Also keine Eingabeparameter. Dann starte ich die Datei 'script.sh' als `sh script.sh` CodZilla vor 10 Jahren 0
Sie bitten die Shell ausdrücklich, Ihr Skript auszuführen. Machen Sie es ausführbar (chmod + x ./script.sh) und führen Sie es aus (./script.sh). Und nennen Sie ein Expect-Skript nicht ".sh", das ist verwirrend - es ist kein Shell-Skript. Mat vor 10 Jahren 1
@ Mat, vielen Dank. Ich habe die Ausführungserlaubnis erteilt und als `. / Script.sh` ausgeführt. Und richtig, es ist kein Shell-Skript. Das wusste ich nicht. CodZilla vor 10 Jahren 0

1 Antwort auf die Frage

1
maganap

Sie müssen Ihre Datei ausführbar machen:

chmod +x script.sh 

und führe es so aus:

./script.sh