1.yum安装
yum install sshpass -y
1.1编译安装
yum install wget -y
wget http://sourceforge.net/projects/sshpass/files/latest/download -O sshpass.tar.gz
tar -zxvf sshpass-1.06.tar.gz
cd sshpass-1.06
./configure
make
make install
2.自定义脚本
#!/bin/bash
password="admin123!"
for num in `seq 21 22`
do
sshpass -p $password ssh [email?protected]$num -o StrictHostKeyChecking=no "mkdir /tmp/sb"
done
3.用法介绍
-p password #后跟密码
[[email?protected] ~]# sshpass -p 123456 ssh [email?protected]
Last login: Wed Apr 16 15:35:22 2014 from 192.168.56.1
[[email?protected] ~]# exit
logout
Connection to 192.168.56.102 closed.
-f filename #后跟保存密码的文件名,密码是文件内容的第一行。
[[email?protected] ~]# cat 1.txt
123456
[[email?protected] ~]# sshpass -f 1.txt ssh [email?protected]
Last login: Fri Apr 18 13:48:20 2014 from 192.168.56.101
[[email?protected] ~]# exit
logout
Connection to 192.168.56.102 closed.
-e #将环境变量SSHPASS作为密码
[[email?protected] ~]# export SSHPASS=123456
[[email?protected] ~]# sshpass -e ssh [email?protected]
Last login: Fri Apr 18 13:51:45 2014 from 192.168.56.101
[[email?protected] ~]# exit
logout
Connection to 192.168.56.102 closed.
#从命令行方式传递密码 -p指定密码
$ sshpass -p ‘123456‘ ssh [email?protected]_ip
$ sshpass -p ‘123456‘ scp [email?protected]_ip:/home/test/t ./tmp/
如在多台主机执行命令:
[[email?protected] ~]# cat a.sh
#!/bin/bash
for i in $(cat /root/1.txt)
do
echo $i
sshpass -p123456 ssh [email?protected]$i ‘ls -l‘done