expect的使用

来源:互联网 发布:英语教练淘宝没了 编辑:程序博客网 时间:2024/06/11 17:57

expect是用于两个主机之间交互的一个工具,如果主机A要和B交互,比如要执行B上的命令和脚本,需要现在A上装tcl和expect

具体软件的下载 ,看下面的连接

http://www.cnblogs.com/kevingrace/p/5900303.html


同时要写个expect的脚本

例如写个test.exp文件

文件下写上

#!/usr/bin/expect

set timeout 10           #可以设置一个超时时间也可以不设置
set dec_file [lindex $argv 0]
spawn ssh ctgmkt@10.140.16.205    #开启一个进程
expect "*password:"                # 当返回的字符串以"word:" 结尾的话,就发送下面的send  字符串,相当于在命令行中键入的命令
send "ctgmkt@123\r"                         #  键入字符串并打入回车符
expect "*~]$"    #  当出现以 "*~]$"结尾的字符串后
send "cd /home/ctgmkt/mktag_shell_file/model_outomatic_put_files\r"    #就send 这里的字符串 并 键入回车符
expect "*~]$"                                                                                               #当出现 "*~]$"
send " java -cp 1106_yz2OS.jar  test.OSExecuter $dec_file\r"                 #就执行下面的脚本命令
expect "*b"                                                                                                  #当出现以b结尾的情况
expect eof     #就退出



执行test.exp  :    expect test.exp

如果要进入expect的命令行形式  就  直接键入  expect  就进入到了  expect的命令行环境

原创粉丝点击