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