真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Expect自動(dòng)化交互應(yīng)用實(shí)例解析-創(chuàng)新互聯(lián)

expect是一個(gè)自動(dòng)化交互套件,主要應(yīng)用于執(zhí)行命令和程序時(shí),系統(tǒng)以交互形式要求輸入指定字符串,實(shí)現(xiàn)交互通信。

創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都做網(wǎng)站、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的銅仁網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

expect自動(dòng)交互流程:

spawn啟動(dòng)指定進(jìn)程---expect獲取指定關(guān)鍵字---send向指定程序發(fā)送指定字符---執(zhí)行完成退出

簡單實(shí)例1:

vim test.exp        ##exp是expect腳本的擴(kuò)展名

#!/usr/bin/expect        ##使用expect解析程序

spawn ssh root@192.168.1.5  free  ##用spawn執(zhí)行ssh命令 登錄后執(zhí)行free命令

expect “*password”  ##匹配獲取的字符串

send “123456\n”        ##匹配后發(fā)送密碼給系統(tǒng),\n是換行

expect  eof  ##處理結(jié)束expect

實(shí)例2:

#!/usr/bin/expect

spawn  ssh root@192.168.1.5 free

expect {

    "yes/no"    {exp_send "yes\r";exp_continue}

     "*password"    {exp_send "123456\r"}

}

expect eof

實(shí)例3:

#!/usr/bin/expect

spawn test.sh

expect {

    "username"  {exp_send "test\r";exp_continue}

  "*password" {exp_send "123456\r";exp_continue}

   "*mail*"  {exp_send "lidao@163.com\r"}

}

expect eof

expect 常用 命令總結(jié)

spawn   交互程序開始  后面跟命令或者指定程序

expect   獲取匹配信息  匹配成功則執(zhí)行expect后面的程序動(dòng)作

send    exp_send  用于發(fā)送指定的字符串信息

exp_continue        在expect中多次匹配就需要用到

send_user        用來打印輸出 相當(dāng)于shell中的echo

exit            退出expect腳本

eof             expect執(zhí)行結(jié)束 退出

set                定義變量

puts              輸出變量

set timeout   設(shè)置超時(shí)時(shí)間

實(shí)例4:

#!/usr/bin/expect

if {$argc !=2 } {

    puts "expect $argv0 ip command"

    exit

}

set ip [lindex $argv 0]

set cmd [lindex $argv 1]

set password "123456"

spawn ssh root@$ip $cmd

expect {

    "yes/no" {send "yes/r";exp_continue}

    "*password" {send "$password\r"}

}

expect eof

expect test.exp 192.168.1.5  "free -m"

實(shí)例5:ssh秘鑰認(rèn)證

生成秘鑰

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa >/dev/null 2>&1

vim test.exp

#!/usr/bin/expect

if [ $argc != 2 ] {

    send_user "usage: expect test.exp file host\n"

    exit

}

set file [lindex $argv 0]

set host [lindex $argv 1]

set password "123456"

spawn ssh-copy-id -i $file "-p 22 root@$host"

expect {

    "yes/no"    {send "yes\r";exp_continue}

    "*password" {send "$password\r"}

}

expect eof

vim kk.sh 循環(huán)expect腳本

#!/bin/bash

for n in 2 3 4 5 6 7

do

    expect test.exp ~/.ssh/id_dsa.pub 192.168.1.$n

done

expect操作簡單 用途明了 易學(xué)易用  不過,現(xiàn)在工作中用的不是很多,日常也多是用來輔助其他程序腳本執(zhí)行的

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


網(wǎng)站欄目:Expect自動(dòng)化交互應(yīng)用實(shí)例解析-創(chuàng)新互聯(lián)
URL網(wǎng)址:http://weahome.cn/article/cshepp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部