Expect 是一个用于自动化交互式应用程序的工具,如 telnet, ftp, passwd, fsck, rlogin, ssh 等
安装 Expect:
在终端中输入以下命令来安装 Expect:
sudo apt-get install expect
创建一个 Expect 脚本:
使用文本编辑器(如 vim, nano 或 gedit)创建一个新文件,例如 my_expect_script.exp
。
编辑 Expect 脚本:
在新创建的 Expect 脚本中,输入以下内容:
#!/usr/bin/expect
# 设置超时时间(以秒为单位),如果应用程序在指定时间内没有响应,脚本将退出
set timeout 10
# 使用 spawn 命令启动交互式应用程序,例如 ssh 用户名@服务器地址
spawn ssh username@example.com
# 使用 expect 命令等待特定的字符串出现在输出中
expect "assword:"
# 使用 send 命令发送密码(假设密码是 "mypassword")
send "mypassword\r"
# 使用 interact 命令将控制权交还给用户,允许用户与应用程序进行交互
interact
保存并退出编辑器。
使脚本可执行:
在终端中,导航到脚本所在的目录,然后输入以下命令使脚本可执行:
chmod +x my_expect_script.exp
运行 Expect 脚本:
在终端中,输入以下命令来运行脚本:
./my_expect_script.exp
现在,Expect 脚本应该能够自动执行交互式应用程序,如 SSH 登录。请注意,这只是一个简单的示例,Expect 脚本可以根据需要进行定制。要了解更多关于 Expect 的信息,请查阅其官方文档:https://expect.readthedocs.io/en/latest/