Взято с www.tech-notes.net/use-expect-in-bash
скрипт принимает в качестве аргументов имя пользователя и пароль, дальше подключается с ними к серверу 192.168.1.10 и выполняет там cat /etc/issue
#!/usr/bin/expect
log_file expect_log
set login [lindex $argv 0]
set pw [lindex $argv 1]
spawn ssh $login@192.168.1.10
expect "$login@192.168.1.10\'s password:"
send "$pw\r"
expect "$login@"
send "cat /etc/issue\r"
Выполнить его можно так:
expect -f script.exp user password
Второй вариант - запустить все прямо в bash:
expect -c 'spawn ssh user@192.168.1.10; expect `Password:` {send - `password\r`}; expect `user@` {send `cat /etc/issue\r`};'