在linux中,expect是一個自動化互動套件,主要應用於執行命令和程式時,系統以交互形式要求輸入指定字串,實現交互通信,執行語法為“yum install -y expect” ;該腳本能夠執行的前提是需要安裝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
# 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的用法是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!