操作环境
操作系统:CentOS release 6.10 (Final)
Linux内核:2.6.32-754.12.1.el6.x86_64
脚本描述
- 通过管理机自动将文件批量分发到不同的服务器上面,以便实现自动化需求
- 前置条件:管理机需要与其他机器实现SSH免密登录功能,详细实现自动化功能可参考:https://blog.csdn.net/cen50958/article/details/89504443 博文中的操作点
- 技术实现:采用scp 命令批量推送文件到客户端
脚本内容
#!/bin/sh
#判断参数个数是否符合要求
if [ $# -ne 3 ];then
echo "usage:$0 <remote_hosts_file> <local_file> <remote_file>>"
exit 1
fi
#导入系统函数
. /etc/init.d/functions
#判断分发主机文件是否存在
if [ ! -f $1 ];then
echo "$1 file does not exist"
exit 1
fi
#定义主机文件分隔符
#校验分发主机文件是否符合要求
while read line
do
#行字符不为空 才做校验
if [ ! -z "$line" ];then
#分割字符串成数组
remoteHost=(${line//,/ })
if [ ! ${#remoteHost[@]} -eq 3 ];then
act