expect相关内容
我正在尝试创建一个正则表达式以捕获设备的邻居详细信息(以下示例输出). 我可以对每行进行硬编码,但是我正在寻找更好的解决方案.也许学习一种新算法. 我对捕获设备ID(HOST1),接口(GigabitEthernet0/1)和端口ID(GigabitEthernet2/43)感兴趣.每个邻居并将其存储在以逗号分隔的列表中. send "show cdp neighbors det
..
我正在自动完成一些期望工作,并且有类似以下内容的东西: # procedure to set background and after patterns proc foo {} { expect_after { -re $regex1 {puts "Matched regex1"; send $command_to_run; exp_continue}
..
我是Expect脚本的新手.我正在尝试创建一个程序,该程序将通过SSH连接到路由器/交换机,并在失败时回退至telnet.在将其放入过程之前,我拥有的代码可以正常工作.我确定我对程序的工作方式不了解.当我将其作为过程调用时,它确实通过SSH进行连接,该SSH收到“连接被拒绝"并按预期方式回退至telnet,但它从未使用密码登录.当我启用调试模式时,我看到它发送了密码,但是由于某种原因,路由器似乎并
..
我绝对是新来的命令. 假设有一个名为"a.rb"的脚本文件,它是用ruby编写的: STDOUT
..
这是我的hello.sh Shell脚本 VALID_NAME="abcd" echo "Name: " read name if [ "$name" == $VALID_NAME ]; then echo "correct" else echo "unexpected input" fi ==========================================
..
我有以下脚本,应该从文件device-list.txt中提取IP地址,然后远程登录到设备,登录并执行show run.脚本成功登录到设备,但此后出现错误.有什么想法我会出错吗? for device in `cat device-list.txt`; do ./test4 $device;done cat test4 #!/usr/bin/expect -f set hostname
..
我正在编写一个Expect脚本来找出远程服务器上是否存在特定文件.我的测试服务器与远程服务器位于同一网络中.当我尝试在stackoverflow中搜索类似的内容时,我只能找到期望在本地服务器上运行的脚本. 此链接(如何查找是否有文件在期望脚本中存在)是最接近的. 在相似的地方,我找到了以下网站- 使用SFTP进行访问 期望脚本 基于两者,我尝试编写我的期望脚本- #!
..
我已尝试使用bash脚本将以下脚本用于SFTP.但这是行不通的.总是在输入密码时出错. /usr/local/bin/expect
..
我真的很不熟悉使用Expect,并且对将命令传递给Expect脚本有点困惑,所以请耐心等待...我已经搜索了很多论坛,但似乎找不到找到使用期望脚本的示例.读取命令以获取用户输入. 在我的Korn Shell脚本中,我调用Expect脚本(expectssh.exp)ssh登录到另一台主机,并获得有关该主机的网络配置(网络接口卡号和子网掩码信息)的用户输入.我将四个参数传递给Expect脚本:
..
我已将超时设置为愚蠢的高数字.有没有更好的办法告诉脚本不要超时? #!/usr/bin/expect spawn telnet 10.10.10.10 set timeout 200000000 expect "login" send "user\r" expect "Password:" send "password\r" send "./run/this.sh\r" 解决方案 将t
..
questions.sh #!/bin/bash declare -a animals=("dog" "cat") declare -a num=("1" "2" "3") for a in "${animals[@]}" do for n in "${num[@]}" do echo "$n $a ?" read REPLY
..
执行expect脚本时,参数在ps ax上可见,如果它们很敏感,则可能是安全漏洞. 尝试自动打开iTerm2上的选项卡,运行ssh admin@host,并在询问Enter passphrase for key '/Users/admin/.ssh/key'时输入密码(密钥使用该密码加密). Host host HostName 1.2.3.4 IdentityFile ~/.ssh/
..
当看到除预期之外的其他信息时,我该如何给出预期的指示? 例如,我尝试自动进行登录.除了成功尝试之外,我还需要脚本向我发送错误消息.我如何期待意外的输出? (我知道一些结果,例如连接被拒绝或密码错误,但是我想抓住一切) 解决方案 尝试如下: set timeout 10; # set a reasonable timeout # expect and send username
..
我希望能够使用Expect脚本通过SSH连接远程登录到路由器, #!/usr/bin/expect set host "192.168.1.50" set user "root" set password "mypass" spawn ssh "$user\@host" expect "word:" send "$password\r" 当我尝试使用该路由器时,路由器变得无响
..
我最近更新并重新格式化了/etc/hosts文件,并希望在每个系统(大约1000个)中运行以刷新我的known_hosts文件.我正在使用期望脚本向RSA指纹问题发送“是".很简单.但是,我知道其中一些系统对我来说是全新的,并且尚未设置我的密码.这产生了两种可能性: “是"发送到RSA指纹问题,我已登录 服务器.然后,我需要发送出口以关闭连接 在移至下一个主机之前.或者... “是"被
..
我的TCL脚本: source reboot_patch.tcl set a 1 while {$a
..
我必须从本地服务器向SFTP服务器发送一些压缩文件. 我的服务器信息 发行人ID:Ubuntu 说明:Ubuntu 12.04.4 LTS 发行:12.04 代号:precise 创建了一个bash脚本,能够将文件发送到sftp,但是如果传输成功,我想发送电子邮件. #!/bin/bash HOST=hostname.domain PORT=22 USER=user
..
执行时 $expect filename.exp user pwd ip 我得到了错误 无法执行"ssh -l用户ip":没有这样的文件或目录 filename.exp的内容是这样的: #!/opt/sfw/bin/expect -D set OMC_Usr [lindex $argv 0] set OMC_Pwd [lindex $argv 1] set OMC
..
医生说: 的参数与expect相同,但是会立即返回. 但是“立即返回"是什么意思? 此命令的用途是什么? 解决方案 您生成了一个图片,该图片会随机询问“您确定[yn]吗?" 想象一下,这个程序有100个问题需要回答. 您不希望对这100个问题中的每一个都有条件期待一个“您确定"问题. 期望让您做到: spawn /some/annoying/progr
..
我的期望脚本中有一个这样的语句 send "sed -i -e 's/$oldport/$newport/' backup.txt\r" expect "$ " 但是,我希望首先检查backup.txt文件是否存在,如果存在,然后进行编辑. 我该如何实现? 谢谢 解决方案 由于Expect是Tcl的扩展,因此所有Tcl命令都可以使用: if {[file exi
..