shell expect使用方法「建议收藏」

shell expect使用方法「建议收藏」Expect的作者DonLibes在1990年开始编写Expect时对Expect做有如下定义:Expect是一个用来实现自动交互功能的软件套件(Expect[isa]softwaresuiteforautomatinginteractivetools)。使用它系统管理员的可以创建脚本用来实现对命令或程序提供输入,而这些命令和程序是期望从终端(terminal)得到输入,一般来说

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

    Expect的作者Don Libes在1990年开始编写Expect时对Expect做有如下定义:Expect是一个用来实现自动交互功能的软件套件(Expect [is a] software suite for automating interactive tools)。使用它系统管理员的可以创建脚本用来实现对命令或程序提供输入,而这些命令和程序是期望从终端(terminal)得到输入,一般来说这些输入都需要手工输入进行的。Expect则可以根据程序的提示模拟标准输入提供给程序需要的输入来实现交互程序执行。甚至可以实现实现简单的BBS聊天机器人。

    Expect是不断发展的,随着时间的流逝,其功能越来越强大,已经成为系统管理员的的一个强大助手。Expect需要Tcl编程语言的支持,要在系统上运行Expect必须首先安装Tcl。

    从最简单的层次来说,Expect的工作方式象一个通用化的Chat脚本工具。Chat脚本最早用于UUCP网络内,以用来实现计算机之间需要建立连接时进行特定的登录会话的自动化。spawn命令来启动脚本和命令,Chat脚本由一系列expect-send对组成:expect等待输出中输出特定的字符,通常是一个提示符,然后发送特定的响应。

    set timeout设置脚本等Shell返回与expect指定的模式匹配的字符串的时间,如果匹配成功则立即继续执行,如果匹配不到就会阻塞,在超出timeout指定的时间后才继续执行。
timeout默认是10s,如果设置为-1,脚本就要永远等下去。

一个简单的例子,用于自动输入kerberos密码:   

#!/usr/bin/expect
#source /home/rank/.bash_profile
set timeout 10
spawn /usr/bin/kinit can.yu
expect "*OPI.COM*"
send "111111\r"
expect eof

Jetbrains全家桶1年46,售后保障稳定

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/234841.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • ajax请求的五个步骤java_ajax请求的五个步骤

    ajax请求的五个步骤java_ajax请求的五个步骤ajax请求的五个步骤第一步,创建XMLHttpRequest对象第二步,注册回调函数第三步,配置请求信息,open(),get第四步,发送请求,post请求下,要传递的参数放这第五步,创建回调函数//第一步,创建XMLHttpRequest对象varxmlHttp=newXMLHttpRequest();functionCommentAll(){//第二步,注册回调函数xmlHttp…

  • Landsat-8 介绍[通俗易懂]

    Landsat-8 介绍[通俗易懂]Landsat-8于2013年2月11日发射升空,目前仍在运行。它始于Landsat数据连续性任务。现在,我们将其简称为Landsat-8。Landsat-8在与太阳同步的近极轨道上绕地球旋转,高度为705公里(438英里),倾斜角为98.2度,每99分钟完成一次地球轨道。卫星的重复周期为16天,赤道穿越时间为:上午10:00+/-15分钟。Landsat-8每天收集550个场景。因此,到2020年8月,它将收集到总计150万个场景。这颗主力卫星仍然是面向公众的开源土地信息的主要内容。…

  • apache RewriteRule

    apache RewriteRule最近发现一个新的东西(可能以前一直没有注意)Apache中的rewrite_modul模块。可以将你的url得到的地址直接重新定义成自己想要的位置。 也就是说输入的URL可以重新定义成一个动态的地址。而且这个URL 不会被改写,动态地址是在后台执行然后返回数据。这个功能还可以使用在写程序时自己定义的CACHE,完全提高服务器负担,加快响应时间,这个就看

  • malloc函数具体解释

    malloc函数具体解释

    2021年11月29日
  • mac os x安装教程_OS X EI Capitan

    mac os x安装教程_OS X EI Capitan【引用】Mac下面除了用dmg、pkg来安装软件外,比较方便的还有用MacPorts来帮助你安装其他应用程序,跟BSD中的ports道理一样。MacPorts就像apt-get、yum一样,可以快速安装些软件。下面将MacPorts的安装和使用方法记录在这里以备查。访问官方网站http://www.macports.org/install.php,这里提供有dmg安装和源码安装两种方式,d

  • jni断点调试「建议收藏」

    jni断点调试「建议收藏」jni断点调试

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号