expect获取返回值

对于获取多台服务器状态且不用交互需要用到expect,但有时候expect无法获取返回值,这里解释一下expect如何获取返回值

expect -c "

spawn $1;

expect {

\"(yes/no)?\" {send \"yes\n\";expect \"assword:\";send \"$2\n\"}

\"assword:\" {send $2\n}

eof

}

expect eof

catch wait result;

exit [lindex \$result 3]"

我们可以在脚本里面这样定义,注意最下面的result

这里需要加上转义字符\$,否则会把$result解析成shell里面的变量,但这里面的$result是需要expect解析的。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-09-29 04:18:34

expect获取返回值的相关文章

工作随笔——Java调用Groovy类的方法、传递参数和获取返回值

接触Groovy也快一年了,一直在尝试怎么将Groovy引用到日常工作中来.最近在做一个功能的时候,花了点时间重新看了下Java怎么调用Groovy的方法.传递参数和获取返回值. 示例Groovy代码如下: # TestGroovy.groovy 定义testC方法,传入3个参数,返回处理后的数据 def testC(int numA, int numB, int numC) { "传入参数:" + numA + numB + numC + "计算之和为:" + (

java多线程之从任务中获取返回值

package wzh.test; import java.util.ArrayList; import java.util.concurrent.Callable; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; class TaskWithResult implements Callable<Strin

获取存储过程返回值及代码中获取返回值

获取存储过程返回值及代码中获取返回值 1.OUPUT参数返回值例: 向Order表插入一条记录,返回其标识 CREATE PROCEDURE [dbo].[nb_order_insert](@o_buyerid int ,@o_id bigint OUTPUT)ASBEGINSET NOCOUNT ON;BEGININSERT INTO [Order](o_buyerid )VALUES (@o_buyerid )SET @o_id = @@IDENTITYENDEND 存储过程中获得方法: D

动态Tsql 获取返回值

使用Execute 和 sp_executesql实现动态Tsql,如何获取动态tsql的返回值? 第一部分:execute 1,Execute是个函数,能够执行sql语句,示例语句如下 declare @sql nvarchar(max) declare @return_cnt int if object_id('tempdb..#tempcnt') is not null drop table #tempcnt create table #tempcnt(cnt int) set @sql=

【黑马Android】(07)多线程下载的原理/开源项目xutils/显示意图/隐式意图/人品计算器/开启activity获取返回值

多线程下载的原理 司马光砸缸,多开几个小水管,抢救小朋友. import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; import java.io.InputStreamReader; import java.io.RandomAccessFile; import java.net.HttpURLConnection; import

打开模态窗体,并获取返回值

1 //编辑 2             function btnEdit(keyid,sysName,mark) { 3                 //  打开模态窗体,并获取返回值 4                 var returnValue = window.showModalDialog('FileChange_SystemEdit.aspx?sysName=' + sysName + '&keyid=' + keyid + '&mark=' + mark, '', '

python执行系统命令后获取返回值

import os, subprocess # os.system('dir') #执行系统命令,没有获取返回值,windows下中文乱码 # result = os.popen('dir') #执行系统命令,返回值为result# res = result.read()# for line in res.splitlines():# print(line ) #用subprocess库获取返回值.# p = subprocess.Popen('dir', shell=True, stdout=

python通过多线程并获取返回值

以下是多线程获取返回值的一种实现方式 # -*-coding:utf-8-*- from time import ctime, sleep import threading import numpy as np import collections loops = ['广州', '北京'] t_list = ['01', '02', '03'] cldas_sum = collections.deque() class MyThread(threading.Thread): def __init

JSF页面中使用js函数回调后台bean方法并获取返回值的方法

由于primefaces在国内使用的并不是太多,因此,国内对jsf做系统.详细的介绍的资料很少,即使有一些资料,也仅仅是对国外资料的简单翻译或者是仅仅讲表面现象(皮毛而已),它们的语句甚至还是错误的,很可能会误导使用者. 相对来说,看国内的那些仅仅是翻译过来的文章或书籍不如直接看国外的官方文档或资料来的实在,在我讲述jsf页面中如何使用js调用后台bean方法之前,先给大家说几个国外的资料.在primefaces官方网站上,你可以搜索到几乎所有你需要的东西,primefaces官网为:http: