!/bin/bash
IP=(
192.168.189.162
192.168.189.163
)
while true
do
clear
#菜单
echo -e "\033[1;34m
欢迎使用该程序:
2.批量分发文件
q.退出
\033[0m"
#获取用户的选择
read -ep "请选择:" menu
#判断用户的选项
case $menu in
1)
while true
do
read -ep "请输入您要下发的命令(返回主页:q):" cmd
if [ $cmd == "q" -o $cmd == "Q" ];then
break
fi
clear
for i in ${IP[@]}
do
echo "------------------$i--------------------"
ssh root@$i "$cmd"
if [ $? -eq 0 ];then
echo -e "\033[1;32m $i主机执行成功!\033[0m"
else
echo -e "\033[1;31m $i主机执行失败!\033[0m"
fi
done
done
;;
2)
while true
do
read -ep "请输入源文件路径,多个文件空格分开(返回主页:q):" file
if [ $file == "q" -o $file == "Q" ];then
break
fi
for i in ${IP[@]}
do
scp $file root@$i:/root/
if [ $? -eq 0 ];then
echo -e "\033[1;32m $i文件拷贝成功!\033[0m"
else
echo -e "\033[1;31m $i文件拷贝失败!\033[0m"
fi
done
done
;;
q|Q)
echo "退出程序!"
exit
;;
*)
echo "输入有误!退出程序!"
exit
esac
done
shell脚本 实现批量分发文件
最新推荐文章于 2024-04-17 18:12:44 发布