期望脚本继续 运行 即使期望不匹配任何东西
Expect script continues to run even the expect does not match anything
#!/usr/bin/expect
spawn ssh admin@10.10.10.10 -o StrictHostKeyChecking=no
expect "5555:"
send "$password\n"
expect "% "
send "exit\n"
无论在 expect "5555:" 上写入什么值,此命令仍然有效并且我有 ssh 连接。
您应该设置超时和超时后的操作:
#!/usr/bin/expect
set timeout 5
spawn ssh admin@10.10.10.10 -o StrictHostKeyChecking=no
expect {
"5555:" { }
timeout { exit 2 }
}
send "$password\n"
expect "% "
send "exit\n"
一些额外信息:默认超时为 10 秒。在 expect
执行某些操作时,如果在 $timeout
秒后仍未看到该模式,则 expect
命令 没有 一个“超时”模式 returns 并且脚本继续。
#!/usr/bin/expect
spawn ssh admin@10.10.10.10 -o StrictHostKeyChecking=no
expect "5555:"
send "$password\n"
expect "% "
send "exit\n"
无论在 expect "5555:" 上写入什么值,此命令仍然有效并且我有 ssh 连接。
您应该设置超时和超时后的操作:
#!/usr/bin/expect
set timeout 5
spawn ssh admin@10.10.10.10 -o StrictHostKeyChecking=no
expect {
"5555:" { }
timeout { exit 2 }
}
send "$password\n"
expect "% "
send "exit\n"
一些额外信息:默认超时为 10 秒。在 expect
执行某些操作时,如果在 $timeout
秒后仍未看到该模式,则 expect
命令 没有 一个“超时”模式 returns 并且脚本继续。