主頁 > 知識庫 > 用expect實現(xiàn)ssh自動登錄服務(wù)器并進行批量管理的實現(xiàn)方法

用expect實現(xiàn)ssh自動登錄服務(wù)器并進行批量管理的實現(xiàn)方法

熱門標簽:外呼系統(tǒng)一天耗費多少流量 陜西便宜電銷機器人軟件 杞縣地圖標注app 免費門店地圖標注注冊入駐 昆明電話外呼系統(tǒng)好么 電話機器人每天搜索多少次 ??谥悄苷Z音電銷機器人好用嗎 艾比利外呼系統(tǒng) 衡水外呼線路解決

shell代碼:

復制代碼 代碼如下:

#!/usr/local/bin/expect
set PASSWD [lindex $argv 1]
set IP     [lindex $argv 0]
set CMD [lindex $argv 2]
spawn ssh $IP $CMD
expect "(yes/no)?" {
send "yesr"
expect "password:"
send "$PASSWDr"
} "password:" {send "$PASSWDr"} "*host " {exit 1}
expect eof

注解:

第一行,制定使用/usr/local/bin目錄下的expect命令對后面的程序進行解釋。
第二行,三行,四行,分別從命令行參數(shù)中獲取要登錄的主機IP地址,登陸密碼,以及要執(zhí)行的命令。
第五行,大概就是要觸發(fā)這樣一個事件,執(zhí)行ssh $IP $CMD命令。
第6行至第11行就是expect的整個交互過程了。
如果讀取到(yes/no)?提示符,就輸入yes并回車,如果讀取到password:提示輸入密碼的字符串,就輸入用戶登錄密碼(root用戶)。
當然如果不是第一次登陸,以前已經(jīng)登錄過的話,當輸入ssh $IP $CMD回車后,會直接提示輸入密碼也就是說會讀到字符串”* password:”,這個時候會輸入密碼回車(send "$PASSWDr").
另外,如果主機不可達的話,(yes/no)?和”password:”的可能都不會出現(xiàn),系統(tǒng)會提示:
“No route to host”退出程序。

您可能感興趣的文章:
  • ssh expect自動登錄的腳本代碼
  • 用expect實現(xiàn)的自動登錄到多臺服務(wù)器的shell腳本
  • Linux中使用expect腳本實現(xiàn)遠程機器自動登錄
  • shell腳本通過expect實現(xiàn)自動單邊無密登錄功能
  • Linux expect實現(xiàn)自動登錄腳本實例代碼

標簽:昌都 臨滄 營口 西寧 宿遷 南京 泰安

巨人網(wǎng)絡(luò)通訊聲明:本文標題《用expect實現(xiàn)ssh自動登錄服務(wù)器并進行批量管理的實現(xiàn)方法》,本文關(guān)鍵詞  用,expect,實現(xiàn),ssh,自動,登錄,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《用expect實現(xiàn)ssh自動登錄服務(wù)器并進行批量管理的實現(xiàn)方法》相關(guān)的同類信息!
  • 本頁收集關(guān)于用expect實現(xiàn)ssh自動登錄服務(wù)器并進行批量管理的實現(xiàn)方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章