转载地址:http://blog.chinaunix.net/uid-17240700-id-2813900.html
1. 安装sshpass
下载:wget http://nchc.dl.sourceforge.net/sourceforge/sshpass/sshpass-1.04.tar.gz安装:
tar -zxvf sshpass-1.04.tar.gz
cd sshpass-1.04
./configure
make && make install
2. 写一个管理sshpass的BASH脚本.
脚本文件名为:/opt/program/bash/test.sh
脚本内容如下:
#!/bin/bash
cat <<menu
1) localhost
2) 192.168.100.100
3) 加上你的主机
MENU
echo -n "Your choose:"
read host
case "$host" in
1)
exec /usr/local/bin/sshpass -p 123456(这是我机器的密码) ssh huabo@localhost
;;
2)
exec /usr/local/bin/sshpass -p 123456 ssh huabo@192.168.100.100
;;
3)
你的登录命令
;;
*)
echo "Error, No host"
;;
esac
3.测试
[root@server bash]# ./test.sh
1) localhost
2) 192.168.100.100
Your choose:2
Last login: Mon Jun 29 02:34:49 2009 from 192.168.100.100
[huabo@server ~]$ ls
opera.exe zabbix-1.6.4 zabbix-1.6.4.tar.gz
[huabo@server ~]$
测试成功!你只需把密码写到脚本里面,执行此脚本,选择相应的主机就行了.
此脚本还可优化一下,搞成:test.sh localhost这种形式更方便。
此外还要注意一点,你需要先手动登录一次,因为第一次登录时会提示:
Are you sure you want to continue connecting (yes/no)?
(脚本没考虑这点)