1、前言

Expect是在TCL(Tool Command Language 工具脚本语言,是Linux内的一种语言包)基础上创建起来的,在安装expect时必须先安装tcl。

2、下载源码包

tcl8.4.11-src.tar.gz

wget http://nchc.dl.sourceforge.net/sourceforge/tcl/tcl8.4.11-src.tar.gz

expect5.45.tar.gz

wget http://download.chinaunix.net/down.php?id=5288&ResourceID=2845&site=1

3、安装tcl8.4.11

3.1 解压

tar xfvz tcl8.4.11-src.tar.gz

3.2 安装配置

cd tcl8.4.11/unix
./configure --prefix=/usr/tcl --enable-shared
make
make install

4、安装 expect5.45

4.1 解压

 tar xfvz expect5.45.tar.gz

4.2 安装配置

cd expect5.45
./configure --prefix=/usr/expect --with-tcl=/usr/tcl/lib --with-tclinclude=../tcl8.4.11/generic

make
make install

5 执行脚本

案例:脚本文件del.sh 作用:远程登录删除目录下文件

#!/usr/tcl/bin/expect -f
 for {set i 14} {$i < 23} {incr i} {
     spawn ssh root@192.168.4.$i
     expect {
        "*password:*" {
        send "123456\r"
        exp_continue
            }
        "*yes/no)?*" {
        send "yes\r"
        exp_continue
        }
    }
    expect "]# "
    send "rm -rf /usr//work/*\r"
    send "exit\r"
    expect eof
 }
Logo

更多推荐