Expect 是一個用于自動化交互式應(yīng)用程序的工具,如 telnet, ftp, passwd, fsck, rlogin, ssh 等
安裝 Expect:
在終端中輸入以下命令來安裝 Expect:
sudo apt-get install expect
創(chuàng)建一個 Expect 腳本:
使用文本編輯器(如 vim, nano 或 gedit)創(chuàng)建一個新文件,例如 my_expect_script.exp
。
編輯 Expect 腳本:
在新創(chuàng)建的 Expect 腳本中,輸入以下內(nèi)容:
#!/usr/bin/expect
# 設(shè)置超時時間(以秒為單位),如果應(yīng)用程序在指定時間內(nèi)沒有響應(yīng),腳本將退出
set timeout 10
# 使用 spawn 命令啟動交互式應(yīng)用程序,例如 ssh 用戶名@服務(wù)器地址
spawn ssh username@example.com
# 使用 expect 命令等待特定的字符串出現(xiàn)在輸出中
expect "assword:"
# 使用 send 命令發(fā)送密碼(假設(shè)密碼是 "mypassword")
send "mypassword\r"
# 使用 interact 命令將控制權(quán)交還給用戶,允許用戶與應(yīng)用程序進行交互
interact
保存并退出編輯器。
使腳本可執(zhí)行:
在終端中,導(dǎo)航到腳本所在的目錄,然后輸入以下命令使腳本可執(zhí)行:
chmod +x my_expect_script.exp
運行 Expect 腳本:
在終端中,輸入以下命令來運行腳本:
./my_expect_script.exp
現(xiàn)在,Expect 腳本應(yīng)該能夠自動執(zhí)行交互式應(yīng)用程序,如 SSH 登錄。請注意,這只是一個簡單的示例,Expect 腳本可以根據(jù)需要進行定制。要了解更多關(guān)于 Expect 的信息,請查閱其官方文檔:https://expect.readthedocs.io/en/latest/