使用本指令碼需要在建立**/tmp/hosts**檔案,寫入所有主機資訊和密碼格式為hostname(ip) password
#!/bin/bash
#使用本指令碼需要在建立/tmp/hosts檔案,寫入所有主機資訊和密碼格式為 hostname password
rpm -qa|grep expect &>/dev/null
["$(
echo $?)
"!= "0"
] && yum -y install expect &>/dev/null && echo
"expect install successfully"||
echo
"expect already exists!"
num=`cat
/tmp/hosts | wc -l`
for i in `seq 1 $num`
do hostname=`sed -n "$p"
/tmp/hosts|awk ''`
passwd=`sed -n "$p"
/tmp/hosts|awk ''`
/usr/bin/expect spawn ssh-keygen
expect "/root/.ssh/id_rsa"
send "\n"
expect
"passphrase"
"again"
} spawn ssh-
copy
-id -i $hostname
expect
"password"
\n"}
} expect eof
eofdone
rm-rf /tmp/hosts
batchcmd批量操作linux主機
batchcmd原始碼 歡迎star 需要python3.0 如需要二進位制執行還需要安裝pyinstaller clone到本地,修改根目錄.cfg配置檔案,執行batchcmd.py clone到本地,安裝pyinstaller,執行 pyinstaller f batchcmd.py 會生成二...
Linux批量處理傳參
1.如何給shell指令碼傳引數 1 指令碼test.sh的內容如下 name 1 echo 如何給shell指令碼傳引數執行 test.sh zhang 命令,可以看到自己編寫指令碼的結果 zhang linux系統除了提供位置引數還提供內建引數,內建引數如下 傳遞給程式的總的引數數目 上乙個 或...
Linux多台主機批量命令指令碼
如果你只維護著1臺機器,這篇文章對你可能就沒啥用處了。如果你維護著大量的linux主機,就需要這樣乙個指令碼幫助你完成日常維護工作,指令碼很簡單,主要是提供乙個思路,其他功能的腳步都可以按照此指令碼的流程實現。1 首先你需要指定一台主機作為信任主機,這樣從這台主機登入其他機器就不需要密碼了。如何設定...