一个完整的ftp远程批量shell

字体: | 打印

单位有30多台远程主机须不定期升级程序,为了方便传送文件,整理如下FTP批量处理程式,主文件为main.sh内容格式固定,调用程序autopro.sh文件可根据传送文件及目录随时更改
main.sh文件内容如下:

hostlist='198.1.1.1  198.1.1.2  198.1.1.3   .......................'   #有多少主机IP,就一起写上吧!
echo
echo "-----远程FTP批量数据传送------"
echo -n "\n  请输入登录用户名:";read username
echo -n "  请输入用户口令  :"
stty -echo                       #将输入的口令隐起来
read userpwd
stty echo
echo "\n  发往以下主机:[用户名:$username]"
echo "  $hostlist"
echo "\n  开始传送程序,按回车键开始 .........."
read goenter

for host in $hostlist             #所有主机IP循环语句
do
echo "正在向服务器 $host 正在传送数据 .........."
sh autopro.sh $host $username $userpwd      #参数一为主机IP,参数二为用户名,参数三为口令
echo "服务器 $host 传送数据完成!!"
echo "OK"
sleep 2
done
echo "\n全部数据传送完毕\n"



autopro.sh 文件内容如下:

ftp -niv $1 <<!
user $2 $3
bin
mkdir 20060415                 #在远和主机上建一个目录
cd 20060415
mput /tmp/readme.txt   
bye
!