Não. você não pode esperar executar comandos bash em um intérprete esperado, assim como você não pode executar comandos perl em um interpretador python - eles são idiomas diferentes. Se você quer rodar alguns comandos bash que requerem interação com o usuário (sudo), então você precisa gerar bash
set prompt {$ $} ; # this is a regular expression that should match the
# *end* of you bash prompt. Alter it as required.
spawn bash
expect -re $prompt
send "sudo ifdown usb0\r"
expect {
"[sudo] password for stud:" {
send "FirstPassword\r"
exp_continue
}
-re $prompt
}
send "sudo ifup usb0\r"
expect -re $prompt
send "ssh [email protected]\r"
expect "[email protected]'s password:"
send "SecondPassword\r"
expect eof