互動工具使用 expect

2021-06-29 05:10:24 字數 785 閱讀 8227

目標:

執行指令碼自動匹配使用者資訊,自動登陸ssh。

條件:ubuntu 10.04

安裝expect 與openssh

bash指令碼(bash.sh)內容:

#!/bin/bash

echo "hello ,now you will login ssh!"

echo "show me the detail info-->##user: $1 ##addr: $2 ##passwd:$3"

./login-expect.sh $1  $2 $3

expect指令碼(login-expect.sh)內容:

#!/usr/bin/expect

#parameter tran all by command.

#login in ssh

set timeout 30

set user [lindex $argv 0]      #設定傳入引數為使用者 ip 密碼

set addr [lindex $argv 1] 

set passwd [lindex $argv 2]  

spawn ssh $user@$addr -p 22    #傳送連線命令

expect "password:"                      #等待字段出現

send "$passwd\r"

interact                                        #設定為互動式(即登陸後停留,如果是expect   eof則是退出-->用於登陸做完事情後退出)

linux 自動互動工具expect

簡介 expect是乙個自動化互動套件,主要應用於執行命令和程式時,系統以互動形式要求輸入指定字串,實現互動通訊。expect自動互動流程 spawn啟動指定程序 expect獲取指定關鍵字 send向指定程式傳送指定字元 執行完成退出.注意該指令碼能夠執行的前提是安裝了expect yum y i...

自動化互動工具 expect

lenovo v110 15ikb notebook scp 192.168.70.187 123 192.168.70.187 s password sudo apt install expect 安裝會在 usr bin 下生成expect工具。spawn 啟動新的程序 send 用於向程序傳送...

Expect 非互動式控制工具

1 一般需要安裝才能用 yun install y expect 2 是一種免費的非互動式工具 當執行有些命令還需我們輸入寫東西才能執行成功的就屬於互動式,例如 yum install 不加 y 時,我們還要輸入y才能安裝,就屬於互動式。3 基本引數 1 定義expect指令碼執行的shell us...