痛點:mac登入跳版機,每次都要輸入使用者名稱和密碼選擇伺服器後,比較繁瑣。
解決:發現expect很好用,share一下,下面是工作中真實使用的指令碼。
前提:安裝expect
1# expect互動的指令碼
2 #!/usr/bin/expect34
# 連線跳板機
5 spawn ssh -p2222 ***@jump.***.jms
67 # 如果返回的內容包含*yes/no,傳送yes並且換行
8expect 10"
*password:
" 11}12
# 選擇伺服器
13expect 15}
16# 伺服器切換使用者
17expect 19}
20# 連線接redis
21expect 23}
24# 輸入鑑權
25expect 27}
28# 選擇redis的1庫
29expect 31}
32expect 34}
35# 保持在遠端
36 interact
使用expect自動登入
expect是乙個會話程式,根據內容反饋來做出應答,python也有乙個相關庫pexpect。用它進行自動登入,不是用authorized key,而是把使用者名稱密碼寫死在指令碼裡,來實現自動登入,畢竟總去上傳key也不現實。我在這兒修改了下,優先接受命令行引數,如果沒有傳則使用預設值。把指令碼放...
使用 expect 自動登入
今天在玩linux,在root與普通使用者之間切換,老是要輸入密碼,然後突然有個想法,自己寫個shell指令碼執行自動切換此不是更方便,瞎搞了一下不行,然後google上搜一下,原來純shell做不了這個事,要用expect,以下安裝步驟 2 安裝tcl 進入tcl目錄 cd tcl 你會看到有乙個...
使用expect實現自動互動,自動登入指令碼
使用expect實現自動互動,自動登入指令碼 指令碼 如下 usr bin expect set timeout 30 spawn ssh l username 192.168.1.1 expect password send ispass r interact 1.usr bin expect 這...