expect

用脚本驱动交互式程序,自动处理提示和输入

补充说明

expect 基于 Tcl,用 spawn 启动程序、expect 等待输出、send 发送输入,适合自动化 ssh、passwd、telnet 等交互流程。优先用密钥/API 替代明文密码自动化。

常用示例

expect -c '
  spawn ssh user@host
  expect "password:"
  send "secret\r"
  interact
'
expect <<'EOF'
spawn ssh user@host
expect "yes/no" { send "yes\r"; exp_continue }
expect "password:" { send "$env(PASS)\r" }
interact
EOF

易错点与排错