`
liyonghui160com
  • 浏览: 780388 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

shell嵌套expect执行命令

阅读更多

 

 

一直都想把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命令实例

    在Shell脚本中嵌套执行`expect`命令是一种非常实用的技术,特别是在自动化运维、部署或需要与交互式程序进行通信时。`expect`是一个Unix/Linux下的工具,用于自动化那些需要用户输入交互的程序,比如SSH登录、SCP...

    14.Shell脚本编程之expect.md

    Expect 提供了一系列命令,用于控制脚本的执行流程,主要包括: - `spawn`: 启动一个新的子进程。 - `send`: 向进程发送指定的字符串。 - `expect`: 从进程接收字符串,并进行匹配。 - `interact`: 允许用户与进程...

    shell批量执行交换机命令

    本脚本通过shell编程,可以将需要批量执行的命令记录在命令文本,然后通过脚本批量刷新执行。本例提供在单台交换机上的批量操作,如需要同时在多台上同时执行批量命令,可以QQ联系。

    linux shell编程 Expect简介及应用中文教程

    2. `expect`:等待并匹配特定的输出或模式,一旦匹配成功,就继续执行后续命令。 3. `send`:向进程发送输入,通常是回应程序的提示。 4. `interact`:将控制权交给用户,允许手动操作。 5. `expect eof`:等待进程...

    shell_expect.sh

    shell_expect.sh

    shell中使用expect命令进行远程执行命令脚本

    在Linux系统管理中,有时我们需要自动化执行远程服务器上的任务,比如执行命令或脚本,而`expect`命令正为此目的而设计。`expect`是一个TCL语言的扩展,用于自动处理交互式应用程序,如SSH、telnet等。通过使用`...

    expect交互式执行网络命令

    expect实现 shell 交互式网络命令,插件安装: tar xzvf expect5.45.tar.gz cd expect5.45 ./configure --prefix=/usr/expect --with-tcl=/usr/tcl/lib --with-tclinclude=../tcl8.4.11/generic make make install ...

    expect5.43.0和tcl8.4.11.zip

    例如,你可以编写一个`Expect`脚本来自动连接到远程服务器,验证身份,然后执行一系列命令,最后安全退出。 在使用`Expect`前,必须确保系统已经安装了`TCL`,因为`Expect`是基于`TCL`的。安装过程通常涉及下载`TCL...

    详解Linux使用shell+expect远程登录主机

    **Shell**是用户与操作系统之间的接口,它提供了一个命令行环境让用户能够执行各种命令或运行脚本。在Linux系统中,Shell脚本通常用于自动化执行一系列命令,从而提高工作效率。 **Expect**则是一款用于自动化交互...

    shell expect

    With the advent of software such as Expect for controlling interactive processes, it has become possible to improve reliability and security with relative ease. This paper reviews the reliability ...

    Linux expect交互命令使用详解.docx

    2. 使用`-c`选项执行命令:`expect -c '命令'` 此外,`expect`还有一些选项用于特定场景: - `-d`: 开启调试模式,输出诊断信息。 - `-D`: 启用调试器。 - `-f`: 从指定文件读取命令。 - `-i`: 交互式输入命令。 - ...

    用expect 实现切换用户时自动输入密码.txt

    ### 使用Expect实现自动切换用户及执行命令 #### 一、Expect简介 `Expect`是一种用于自动化交互式命令的工具,它能模拟用户与基于文本的交互式程序进行对话。通过编写脚本来控制这些对话,我们可以实现一系列自动...

    expect在windows下使用的

    1. **命令行交互**:`Expect`脚本在命令行环境下运行,通过`spawn`命令启动一个进程(如SSH连接、telnet会话等),然后发送和接收数据。 2. **期望与匹配**:`expect`命令用于设置期望的输出,可以是精确的字符串、...

    shell结合expect写的批量scp脚本工具

    但我到现在还在对python的恐惧之中(虽然已经在空闲时间努力去学习了),所以使用了shell和expect脚本结合的方式,写了这个批量scp的脚本工具。 expect用于自动化地执行linux环境下的命令行交互任务,例如scp、ssh...

    Linux运维-运维系统服务04-Shell脚本d5-Shell随机数与循环嵌套-12expect程序交互2.mp4

    Linux运维-运维系统服务04-Shell脚本d5-Shell随机数与循环嵌套-12expect程序交互2.mp4

    Linux运维-运维系统服务04-Shell脚本d5-Shell随机数与循环嵌套-13expect程序交互3.mp4

    Linux运维-运维系统服务04-Shell脚本d5-Shell随机数与循环嵌套-13expect程序交互3.mp4

    Jsch批量执行多条命令,包含切换用户输入密码

    参考expect4j的交互式操作方式控制输入输出流实现批量执行多条shell命令同时支持切换用户输入密码提权执行命令输入密码等操作 有完整的测试用例,便于理解 模板化执行命令示例 [$]send[su - root] [Password:]...

    linux expect安装及expect,tcl安装包

    你可以通过运行 `expect` 命令来测试是否安装成功。 压缩包中的`check.conf`可能是用于配置或检查环境的文件,具体用途需根据文件内容来确定。 `scp_auto.sh` 是一个自动化SCP文件传输的脚本,可以用来批量复制...

Global site tag (gtag.js) - Google Analytics