• expect使用


    1、安装   

    yum install -y expect

    2、使用

    1)定义脚本执行的shell

    #!/bin/bash

    2)set timeout 30

    设置超时时间,单位是秒,如果设为timeout -1 意为永不超时

    3)spawn

    spawn是进入expect环境后才能执行的内部命令,不能直接在默认的shell环境中运行

    主要功能:传递交互命令

    4)expect

    这里的expect同样是expect的内部命令

    主要功能:判断输出结果是否包含某项字符串,没有立即返回,否则就等待一段时间后返回,等待时间通过timeout进行设置

    5)send

    执行交互动作,将交互要执行的动作进行输入给交互指令

    6)interact

    执行完后保持交互动作,吧控制权交给控制台

    如果不加这一项,交互完成后会自动退出

    7)exp_continue

    继续执行接下来的交互操作

    8)$argv

    expect脚本可以接受从bash传递过来的参数,可以使用[lindex $argv n]获得,n从0开始,分别表示第一个,第二个,第三个。。。参数

    3、一台控制

    #!/usr/bin/expect
    set ipaddress "192.168.1.76"
    set passwd "123456"
    set timeout 30
    spawn ssh root@$ipaddress
    expect {
    "yes/no" { send "yes
    ";exp_contine}
    "password:" { send "$passwd
    "}
    }
    interact
    多台控制
    #!/usr/bin/expect set ipaddress [ lindex $argv 0 ] set user [ lindex $argv 1 ] set passwd [ lindex $argv 2 ] set timeout 30 spawn ssh root@$ipaddress expect { "yes/no" { send "yes ";exp_contine} "password:" { send "$passwd "} } interact

    cp ssh2.exp /usr/sbin/ssh2

    ssh2 192.168.1.76 root 123456

  • 相关阅读:
    树莓派远程连接工具VNC使用教程
    winform开发之UI系列
    设计winform自带动态加载工具按钮和实现热键响应
    winform版弹框操作
    vs2012中将图片放到resource中进行调用
    构建winform控件数据缓存器
    c#跨线程访问控件帮助类
    CSS3过渡
    JavaScript 内置对象 Array 数组
    JavaScript 数组sort方法使用
  • 原文地址:https://www.cnblogs.com/wangyong-blog/p/10277035.html
Copyright © 2020-2023  润新知