Я пытаюсь использовать Expect в сценарии Bash, чтобы предоставить пароль SSH. Предоставление пароля работает, но я не попадаю в сеанс SSH, как должен. Он идет прямо к Башу.
Мой сценарий:
#!/bin/bash
read -s PWD
/usr/bin/expect <<EOD
spawn ssh -oStrictHostKeyChecking=no -oCheckHostIP=no usr@$myhost.example.com'
expect "password"
send "$PWD\n"
EOD
echo "you're out"
Результат моего скрипта:
spawn ssh -oStrictHostKeyChecking=no -oCheckHostIP=no usr@$myhost.example.com
usr@$myhost.example.com's password: you're out
Я хотел бы иметь сеанс SSH и, только когда я выйду из него, вернуться к моему сценарию Bash.
Причина, по которой я использую Bash перед Expect, заключается в том, что мне нужно использовать меню. Я могу выбрать, к какому устройству / устройству подключиться.
Тем, кто хочет ответить, что я должен использовать ключи SSH, воздержитесь.