expect工具基本应用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了expect工具基本应用相关的知识,希望对你有一定的参考价值。

简介
expect是建立在tcl语言基础上的工具,专门用来解决shell脚本中不可交互的问题。只能捕捉由spawn命令启动的进程的输出。

基础命令

send:向进程发送字符串,用于模拟用户的输入

expect:判断上次输出的结果是否包含指定的字符串,如果由立即返 回,否则就等待超时时间后返回

spawn:启动进程,并跟踪后续交互信息

interact:执行完成后保持交互状态,把控制权交给控制台

EOF:结束交互状态
timeout :指定超时时间,默认10s timeout -1为永不超时
exp_continue 容许expect继续向下执行命令
send_user 回显命令,相当于echo
$argv参数数组 :expect脚本可以接受从bash传递的参数,可用使用 [lindex $argv n]获得,n从0开始,表示第一个参数。

expect执行方式

直接执行
嵌入执行

直接执行脚本声明 :#!/usr/bin/expect
嵌入执行脚本声明:#!/bin/bash

脚本实例

1 远程登录其他主机

直接执行

技术图片

技术图片

嵌入执行

技术图片

技术图片

2 创建用户 并设置密码

技术图片

技术图片

以上是关于expect工具基本应用的主要内容,如果未能解决你的问题,请参考以下文章

expect命令

Linux之expect命令

expect免交互脚本编程

Shll编程之Expect免交互

Shell编程之Expect免交互

Shell编程——Expect免交互