您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“linux中expect怎么用”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“linux中expect怎么用”這篇文章吧。
在linux中,expect是一個自動化交互套件,主要應用于執行命令和程序時,系統以交互形式要求輸入指定字符串,實現交互通信,執行語法為“yum install -y expect”;該腳本能夠執行的前提是需要安裝expect。
本教程操作環境:linux7.3系統、Dell G3電腦。
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 "123456\n" expect eof
2. ssh遠程登錄主機執行命令,在shell腳本中執行expect命令,執行方法sh 2.sh、bash 2.sh 或./2.sh都可以執行.
#!/bin/bash passwd='123456' /usr/bin/expect <<-EOF set time 30 spawn ssh saneri@192.168.56.103 df -Th expect { "*yes/no" { send "yes\r"; exp_continue } "*password:" { send "$passwd\r" } } expect eof EOF
以上是“linux中expect怎么用”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。