1 #!/usr/bin/expect 2 set timeout 100 3 set passwd "your password" 4 spawn shell 5 expect "key" 6 send "$passwd\n" 7 interact
- 第一行主要用于指明expect执行路径,由于登录类的脚本本质上是由expect解释执行,所以第一行需要指明expect的路径
- 第二行用于设置超时时间,设置值为-1代表不超时
- 第三行用于设置登录密码,即填写你要执行的shell语句的密码
- 第四行用spawn来执行你要执行的shell命令
- 第五行使用expect来匹配执行shell命令的返回值中的关键字key,即需要知道执行shell之后等待输入密码的那行语句,超时时间即第二行设置的时间
- 第六行使用send将第三行设置的密码自动填充到terminal,实现登录功能
- 第七行使用interact退出expect环境,返回terminal界面,实现登录成功之后再输入,如不使用interact则会停留在expect环境中,并且无法输入
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程