1. 程式人生 > >shell腳本批量推送公鑰

shell腳本批量推送公鑰

寫入 watermark color roc 主機ip 路徑 查看文本 images ont

針對大量的主機時,推送公鑰需要一個個的輸入IP和對面的密碼顯得異常的麻煩,所以寫了個shell腳本進行批量推送。
先yum安裝一個expect軟件,這個軟件是負責交互的。
這裏先把需要推送的主機IP寫入到一個文本中,後續讀區的IP從這個文本中調用。
技術分享圖片

#!/bin/bash
all=`cat /opt/ip.txt`     #定義一個變量,查看文本中的內容
for i in $all    #定義i變量,逐個查看
do
password="123456" #定義對方的密碼 
/usr/bin/expect -c "      #expect命令的路徑
        spawn ssh-copy-id root@$i  #推送ip為逐個查看的變量i
        expect {
         \"*(yes/no)\" { send \"yes\r\";exp_continue }   #當匹配到yes/no時,回答yes
        \"*password\" { send \"$password\r\"; exp_continue } #當匹配到password的時候回答的密碼為我們定義的
        }     
expect eof"
done

這樣就可以直接免交互的進行推送了。

shell腳本批量推送公鑰