В моем файле сценария bash я пытаюсь использовать expect
, чтобы предоставить пароль для команды ssh
, но он не работает. Вот мой сценарий:Невозможно использовать ожидание в сценарии Bash
#!/bin/bash
/usr/bin/expect << EOD
spawn ssh [email protected]
expect "[email protected]'s password:"
send "mypassword\r"
interact
expect eof
EOD
И выход после того, как я выполняю скрипт:
[[email protected] Desktop]$ ./login.sh
spawn ssh [email protected]
[email protected]'s password: [[email protected] Desktop]$
Может кто-то дайте мне знать, как использовать expect
в моем сценарии без изменения #!/bin/bash
к #!/usr/bin/expect
?
Что @ruakh сказал, + изменить пароль прямо сейчас ... – janos
возможно дубликат [Использование ожидать в Баш скрипт, чтобы обеспечить пароль для команды SSH] (http://stackoverflow.com/questions/4780893/use-expect-in-bash-script-to-give-password-to-ssh-command) –
И в любом случае используйте ключевую проверку подлинности, а не взломать с помощью 'ожидать' – janos