expect相关内容

通过bash数组以期望脚本

我有一个bash脚本,可以像这样调用期望脚本 $SCRIPTS_DIRECTORY/my_expect_script.sh $my_bash_array 看来,我可以将变量传递过来并使用它. 对于此示例,变量似乎在[lindex $argv 0]中. 从bash开始,它将是一堆值,例如1 2 3 4 5. 我试图弄清楚如何使用Expect来获取这个变量,将其保存到一个数组中, ..
发布时间:2020-11-02 02:50:45 其他开发

捕捉即将死去的过程

我正在写一些pexpect的东西,这些东西基本上是通过telnet发送命令的. 但是,我的telnet会话可能会死掉(由于网络问题,电缆被拔掉了等等). 我该如何初始化telnet会话,以便如果它死了,我可以捕获它并告诉它重新连接,然后继续执行它所在的代码. 这可能吗? 解决方案 恕我直言,通常使用诸如import pexpect as px cmds = ['cmd1' ..
发布时间:2020-11-02 02:50:43 Python

使用su和Expect脚本登录用户时出现问题

我正在为您使用用户名和密码登录的班级创建网站,然后将您带到显示班级成绩的页面. 该网站使用 bash脚本运行,并将托管在用户使用的计算机上已经具有用于登录的用户名和密码. 我还有一个名为calcgrade.sh的脚本,它将为当前登录的用户或作为参数传递给脚本的用户计算成绩. 因此,最初,我将使用此命令: echo -e "$password\n" | sudo -Sk -u ..
发布时间:2020-11-02 02:49:36 其他开发

如何隐藏ssh期望用户/密码

我的Expect脚本以明文形式显示密码/用户,我想将其隐藏. #!/usr/local/bin/expect ########################################################################################### ############ # Input: It will handle two argume ..
发布时间:2020-11-02 02:49:30 其他开发

Linux Telnet vt100返回键发送^ M

我正在用Linux Debian中的TCL和Expect编写Telnet自动化脚本. 在Telnet会话中或在* .tcl脚本中(send "command\r")甚至在send "command\n"中按Return键,将导致该行以 ^ M (Ctrl + M)结尾发送.当然,远程主机将这些命令视为非法.在打开连接之前尝试telnet set crlf,并在连接时尝试mode line,但这无效 ..
发布时间:2020-11-02 02:48:21 服务器开发

期望脚本用于远程SSH登录和执行命令

我正在使用以下Expect脚本将SSH远程登录到Raspberry Pi,并正在执行命令: #!/usr/bin/expect set timeout 60 spawn ssh [lindex $argv 1]@[lindex $argv 0] expect "yes/no" { send "yes\r" expect "*?assword" { send "[lindex ..
发布时间:2020-11-02 02:48:18 其他开发

如何使用Expect输入Perl脚本的密码?

我希望在运行安装脚本时自动输入密码.我已经使用Perl中的反引号调用了安装脚本.现在我的问题是如何使用expect或其他方式输入该密码? my $op = `install.sh -f my_conf -p my_ip -s my_server`; 执行上述操作时,将打印密码行: Enter password for the packagekey: 在上面的行中,我想输入密码 ..
发布时间:2020-11-02 02:48:16 其他开发

为什么我在使用libexpect.so的简单c ++程序中出现分段错误?

我正忙于一个项目,在该项目中我必须自动化bash或ssh中的某些进程,因此我决定使用libexpect.so库.如果您不知道libexpect是什么,它将提供一个我可以在c ++程序中使用的Expect扩展,而Expect只是一个可以在其中运行诸如ssh之类的自动化脚本的程序.因此,我可以执行一个尝试在某个地方ssh的脚本...当按期望找到密码提示时,我本可以已经给了期望发送的密码. 我的问 ..
发布时间:2020-11-02 02:47:14 C/C++开发

如何在Expect条件语句中使用Bash脚本变量

我正在编写一个Bash脚本,并使用Expect做sftp.现在在Expect块中,我想在条件语句中访问Bash变量.但是,我无法这样做.该怎么办? 此外,此脚本的执行由C程序控制,我想将输出重定向到日志文件(该文件也是动态的).我可以这样做,并禁止标准输出中的所有输出吗? 这是代码: !/usr/bin/bash host=$1 user=$2 pass=$3 action=$4 ..
发布时间:2020-11-02 02:47:13 其他开发

不用等待期望脚本中的用户输入

当我尝试运行以下期望脚本时,它只是完成运行,而是等待用户输入.有人可以告诉我我在做什么错吗? #!/usr/bin/expect puts -nonewline stdout "Enter device id:" flush stdout gets stdin id puts -nonewline stdout "Enter device name:" flush stdout gets ..
发布时间:2020-11-02 02:46:10 其他开发

如何使用tcl-expect等待过程完成

我正在使用期望编写脚本,在该脚本中我必须重新登录某些主机&之后,我需要发送一些命令.现在,我要退出该主机,然后再次重新登录到其他主机,然后发送一些命令.但是我的脚本运行不是在等待第一个主机完成其工作并退出,而是在上一个进程之间发送其他命令. 我如何使用Expect请指导? 示例代码如下: #!/usr/local/bin/expect -f spawn rlogin host1 ex ..
发布时间:2020-11-02 02:46:07 其他开发

在Expect脚本中处理多个语句

我是Expect脚本的新手. 我在Linux机器上为ssh编写了Expect脚本,在那里我面临着在ssh'到不同Linux机器的问题.下面,我复制了脚本. !/usr/local/bin/expect set LinuxMachine [lindex $argv 0] spawn ssh root@$LinuxMachine expect "root@$LinuxMachine ..
发布时间:2020-11-02 02:46:06 其他开发

Ruby-Expect和Pty的问题

我正在尝试编写一个Ruby脚本,它将ssh切换到服务器,运行给定命令,并从中获取输出.这是我到目前为止的内容,主要是根据编程Ruby 本书改编而成: require 'pty' require 'expect' $expect_verbose = true PTY.spawn("ssh root@x.y") do |reader, writer, pid| reader.expect( ..
发布时间:2020-11-02 02:46:00 其他开发

如何在TCL/EXPECT中使用$ expect_out分配变量?

如果我想使用以下正则表达式匹配DEF_23: expect { -re "DEF_\[0-9]*" set result $expect_out(1,string) } 为什么说no such element in array? $expect_out如何工作,如何使用正则表达式捕获DEF并将其分配给变量result? 解决方案 您正在寻找expect_out(0 ..
发布时间:2020-11-02 02:45:57 其他开发

使用Expect脚本从远程计算机执行SSH

我是期望脚本的新手,有一个用例,我需要在已经使用期望脚本执行过ssh的计算机上执行ssh.这是我的代码段 #!/usr/bin/expect -f set timeout 60 spawn ssh username@machine1.domain.com expect "Password: " send "Password\r" send "\r" # This is successfu ..
发布时间:2020-11-02 02:44:50 其他开发