簡介
expect是創建在tcl語言基礎上的工具,專門用來解決shell腳本中不可交互的問題。只能捕捉由spawn命令啓動的進程的輸出。shell
基礎命令數組
send:向進程發送字符串,用於模擬用戶的輸入bash
expect:判斷上次輸出的結果是否包含指定的字符串,若是由當即返 回,不然就等待超時時間後返回ide
spawn:啓動進程,並跟蹤後續交互信息工具
interact:執行完成後保持交互狀態,把控制權交給控制檯spa
EOF:結束交互狀態
timeout :指定超時時間,默認10s timeout -1爲永不超時
exp_continue 允許expect繼續向下執行命令
send_user 回顯命令,至關於echo
$argv參數數組 :expect腳本能夠接受從bash傳遞的參數,可用使用 [lindex $argv n]得到,n從0開始,表示第一個參數。3d
expect執行方式blog
直接執行
嵌入執行進程
直接執行腳本聲明 :#!/usr/bin/expect
嵌入執行腳本聲明:#!/bin/bash字符串
腳本實例
1 遠程登陸其餘主機
直接執行
嵌入執行
2 建立用戶 並設置密碼