linux中expect的用法是什么

linux中,expect是一個自動化交互套件,主要應用于執行命令和程序時,系統以交互形式要求輸入指定字符串,實現交互通信,執行語法為“yum install -y expect”;該腳本能夠執行的前提是需要安裝expect。

linux中expect的用法是什么

本教程操作環境:linux7.3系統、Dell G3電腦。

linux中expect的用法是什么

expect是一個自動化交互套件,主要應用于執行命令和程序時,系統以交互形式要求輸入指定字符串,實現交互通信。

expect自動交互流程:

spawn啟動指定進程—expect獲取指定關鍵字—send向指定程序發送指定字符—執行完成退出.

注意該腳本能夠執行的前提是安裝了expect

yum?install?-y?expect

expect常用命令總結:

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

  • expect? ? ? ? ? ? ? 獲取匹配信息匹配成功則執行expect后面的程序動作

  • send exp_send? ? ? ?用于發送指定的字符串信息

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

  • send_user? ? ? ? ? ?用來打印輸出 相當于shell中的echo

  • exit? ? ? ? ? ? ? ? 退出expect腳本

  • EOF? ? ? ? ? ? ? ? ?expect執行結束 退出

  • set? ? ? ? ? ? ? ? ?定義變量

  • puts? ? ? ? ? ? ? ? 輸出變量

  • set timeout? ? ? ? ?設置超時時間

示例:

1.ssh登錄遠程主機執行命令,執行方法 expect 1.sh 或者 ./1.sh

#?vim?1.sh? #!/usr/bin/expect spawn?ssh?saneri@192.168.56.103?df?-Th expect?"*password" send?"123456n" expect?eof

2. ssh遠程登錄主機執行命令,在shell腳本中執行expect命令,執行方法sh 2.sh、bash 2.sh 或./2.sh都可以執行.

#!/bin/bash passwd='123456' /usr/bin/expect?<p>相關推薦:《<a href="http://www.php.cn/course/list/33.html" target="_blank">Linux視頻教程</a>》<br></p>

? 版權聲明
THE END
喜歡就支持一下吧
點贊6 分享