一、首先我們在終端本地要寫一個登錄的腳本,eg:
當然首先要touch login.sh 啦,下面就是腳本文件,比較low,大神勿噴,會更炫酷寫法的小伙伴可以自己參考這個思路寫,不會的直接復制就好啦
#!/usr/bin/expect -f
set hostname [lindex $argv 0]
set user [lindex $argv 1]
set password [lindex $argv 2]
set timeout 30
spawn ssh -tt $user@$hostname;
expect {
"yes/no" { send "yes\r";exp_continue }
"*password:" { send "$password\r";}
}
interact
~
如果寫好了在sh login.sh 的時候,發現expect不是一個可執行的命令的話,我們還需要下載expect依賴噢,命令如下
sudo apt install expect 這個是mac版本的哈,如果小伙伴是windows的推薦去下載cygwin灰常好用哈,下載的時候一路下
一步就好了,中途會讓你安裝需要的功能,記得安裝一下三個依賴包,很重要!(tcl、expect、apt-cyg),
下完就可以奔放了哈,
二、下面就來編寫我們的懶人登陸ssh啦,其實就是利用“起別名”來實現的,同樣的哈,大神勿噴
首先找到啟動終端就運行的一個文件bash_profile,然后編輯這個文件,輸入以下內容:
alias 別名='expect login.sh sship root passwd'
ps:別名就是你登陸終端之后輸入這個別名就會自動登陸/或者操作你的指令啦!
具體圖示如下,因為我是wsl的終端,所以跟mac的啟動文件名不一致,但是原理是一樣的(windows小伙伴如果也想體驗mac終端,可以評論或者私聊)
三、學會了就記得來評論點贊吧,前一段時間比較忙,一直沒更新。
聲明:本文為博主學習感悟總結,水平有限,如果不當,歡迎指正。如果您認為還不錯,歡迎轉載。轉載與引用請注明作者及出處。