国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務(wù)器 > Web服務(wù)器 > 正文

Linux expect實現(xiàn)自動登錄腳本實例代碼

2024-09-01 13:54:16
字體:
供稿:網(wǎng)友

expect

expect可以讓我們實現(xiàn)自動登錄遠程機器,并且可以實現(xiàn)自動遠程執(zhí)行命令。當然若是使用不帶密碼的密鑰驗證同樣可以實現(xiàn)自動登錄和自動遠程執(zhí)行命令。但當不能使用密鑰驗證的時候,我們就沒有辦法了。所以,這時候只要知道對方機器的賬號和密碼就可以通過expect腳本實現(xiàn)登錄和遠程命令。

引言

目前在公司是一人一臺虛擬機,大多數(shù)工作都要在虛擬機上完成,為此每天要執(zhí)行很多次【ssh xxx@xxxxxx】指令登錄虛擬機;有很多方式解決這個問題,如使用xshell、secureCRT等工具記錄常用的連接,我就寫了一個簡單的腳本實現(xiàn)一鍵登錄~

login.sh腳本內(nèi)容如下:

#!/usr/bin/expectspawn ssh xxx@xxxxxxexpect "*password:"send "密碼/r"interact

再將【./login.sh】配置別名alias,或移動到可執(zhí)行目錄中,即可實現(xiàn)【login】一鍵登錄;

expect是一個處理交互的指令,通過expect我們可以把交互過程寫到Shell腳本里以實現(xiàn)一些自動化操作~

expect有四個核心的指令:

  • spawn:啟動新進程,后跟新進程要執(zhí)行的指令;
  • expect:指定要監(jiān)聽的字符串,如果spawn進程返回了匹配的字符串(如標準輸入的提示信息),則觸發(fā)send;
  • send:發(fā)送指定的字符串到spawn進程,代替標準輸入;
  • interact:用戶參與交互;

對于login.sh的執(zhí)行過程為:

【spawn】啟動一個新進程執(zhí)行ssh登錄指令,【expect】監(jiān)聽到標準輸入的提示信息『xxx@xxxxxx's password』符合匹配規(guī)則,觸發(fā)【send】發(fā)送密碼代替手動輸入,完成登錄,【interact】用戶參與交互,此時已登錄上了虛擬機;

使用expect還可以完成如:批量更新git代碼庫、自動登錄FTP等功能等~

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網(wǎng)的支持。


注:相關(guān)教程知識閱讀請移步到服務(wù)器教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 拉萨市| 苏尼特左旗| 祁东县| 洛隆县| 大宁县| 柳林县| 平乐县| 图木舒克市| 都匀市| 梅河口市| 龙门县| 秦安县| 公主岭市| 莱芜市| 兴国县| 望奎县| 星座| 三穗县| 宜章县| 四子王旗| 平罗县| 尉犁县| 霍山县| 东城区| 海口市| 石棉县| 阿尔山市| 九江市| 禄丰县| 清水县| 乌鲁木齐市| 澜沧| 黔西| 长武县| 盐边县| 鹤壁市| 扬州市| 商洛市| 定襄县| 轮台县| 商洛市|