zoukankan      html  css  js  c++  java
  • 自动化脚本

    expect 基于tcl演变而来,是一个免费的编程工具,用来实现自动的交互式任务,而无需人为干预。说白了,expect就是一套用来实现自动交互功能的软件。
    我们运行命令、脚本或程序时,这些命令、脚本或程序都需要从终端输入某些继续运行的指令,而这些输入都需要人为的手工进行。而利用expect,则可以根据程序的提示,模拟标准输入提供给程序,从而实现自动化交互执行。


    常用命令

    spawn 启动新的进程
    expect 从进程接收字符串
    send 用于向进程发送字符串
    interact 命令主要用于退出自动化,进入人工交互,需要和spawn 配合使用
    eof 退出命令窗口

    exp_continue 循环匹配

    $argc 表示参数个数
    而参数值存放在$argv中,比如取第一个参数就是[lindex $argv 0]

    条件语句后要有一个空格隔开
    if {} {} eles {}

    #!/bin/bash
    mv /home/duanyu/git/common_api/target/common_api-1.0.1.war /home/duanyu/git/common_api/target/ROOT.war
    
    expect ./combot.exp
    #!/usr/bin/expect   
    set timeout 30
    spawn scp /home/duanyu/git/common_api/target/ROOT.war sto@192.168.1.46:/usr/local/commo_apache-tomcat-8.5.35_8080/webapps
    expect {
    "password:" {send "123
    "}
    }
    expect eof
    spawn ssh sto@192.168.1.46
    expect {
    "password:" {send "123
    "}
    }
    expect {
    "\$" {send "cd /usr/local/www/common_apache-tomcat-8.5.35_8080/logs 
    "}
    }
    expect {
    "\$" {send "sudo tail -f  catalina.out
    "}
    }
    expect {
    "密码:" {send "123
    "}
    }
    
    interact 
  • 相关阅读:
    POJ3041Asteroids(最小点覆盖+有点小抽象)
    POJ 2240Arbitrage(Floyd)
    POJ1860Currency Exchange(Bellman + 正权回路)
    POJ3259Wormholes(判断是否存在负回路)
    TCL V7300A-3D升级教程
    “一生所爱“一首一听就很想落泪的歌曲
    一生所爱 怀念那段旧时光~
    文艺小青年
    又是一年中秋节
    luogu1080 国王游戏(贪心+高精度)
  • 原文地址:https://www.cnblogs.com/licorice/p/11081874.html
Copyright © 2011-2022 走看看