一直都想把expect的操作写到bash脚本里,这样就不用我再写两个脚本来执行了,搞了一下午终于有点小成就,给大家看看吧.
系统:centos 5.x
1.先安装expect
yum -y install expect
2.脚本内容:
cat auto_svn.sh
#!/bin/bash passwd='123456' /usr/bin/expect <<-EOF set time 30 spawn ssh -p18330 root@192.168.10.22 expect { "*yes/no" { send "yes\r"; exp_continue } "*password:" { send "$passwd\r" } } expect "*#" send "cd /home/trunk\r" expect "*#" send "svn up\r" expect "*#" send "exit\r" interact expect eof EOF
相关推荐
在Shell脚本中嵌套执行`expect`命令是一种非常实用的技术,特别是在自动化运维、部署或需要与交互式程序进行通信时。`expect`是一个Unix/Linux下的工具,用于自动化那些需要用户输入交互的程序,比如SSH登录、SCP...
Linux运维-运维系统服务04-Shell脚本d5-Shell随机数与循环嵌套-12expect程序交互2.mp4
Linux运维-运维系统服务04-Shell脚本d5-Shell随机数与循环嵌套-13expect程序交互3.mp4
### 利用expect命令实现Shell自动化交互的方法详解 #### 背景介绍 在Linux环境中,经常需要执行一些远程操作,比如通过SSH进行远程登录、使用SCP进行远程文件复制、或者利用SFTP进行文件传输等。这些操作通常涉及...
前 言第1章 如何才能学好.../ 310第18章 Expect自动化交互式程序应用实践 / 317第19章 企业Shell面试题及企业运维实战案例 / 340第20章 子Shell及Shell嵌套模式知识应用 / 377附 录 Linux重要命令汇总 / 393
上述脚本中,`spawn` 启动 SSH 连接,`expect` 等待“password:”提示,然后 `send` 输入密码,再等待命令提示符并执行 `ls -l` 命令。 4. **匹配模式** - Expect 可以使用正则表达式作为匹配模式,以应对各种...
在Shell脚本编程中,随机数的生成和嵌套循环是两种非常实用的技能,尤其在自动化测试、脚本模拟用户行为或者进行某些基于概率的处理时。下面将详细讲解这两个主题。 ### 一、随机数 #### 1. 如何生成随机数? 在...
- 单引号('):如果你正在创建一个新的字符串,其中可能包含其他脚本或命令,并且不希望这些内部的变量被解析,这时应使用单引号。比如,当你需要生成一个临时的expect脚本,或者在字符串中保留某些特殊字符的原始...