linux下文件同步脚本
2016-03-16 11:45
543 查看
文件传输在linux下是很容易通过scp协议和命令实现的,本脚本是同步集群的文件夹的文件,也可以单独同步某个机器。
各个机器直接最好设置无密登陆,否则中间会不断的要求输入登陆密码。
脚本如下:
各个机器直接最好设置无密登陆,否则中间会不断的要求输入登陆密码。
脚本如下:
#! /bin/bash #目的主机的登录名 USERNAME=hadoop function synfiles() { host=$2 dir=$(ls $1); #获取需要同步文件列表 for file in $dir do fs=$1/$file; echo $fs; if [ -f $fs ]; then scp $fs $USERNAME@$host:$fs; elif [ -d $fs ]; then scp -r $fs $USERNAME@$host:$fs; fi done } function gethost(){ path=$1 #获取同步主机列表,目前是从/etc/host中获取 hosts=$(awk '/slave/ {print $2}' /etc/hosts) for host in $hosts do echo 'beginning synchronize $host files' synfiles $path $host done } dir= if [ ! $1 ];then dir=/var/log else dir=$1 fi echo 'synic files in'$dir #同步指定的主机 if [ $2 ];then host=$2 echo "beginning synchronize ${host} files" synfiles $path $2 else #同步默认设置的主机列表 gethost $dir fi
相关文章推荐
- 通过桥接的方式,连接虚拟机(centos7)和宿主机(ubuntu)
- #Linux第四周学习总结——扒开系统调用的三层皮(上)
- linux下scrapy环境搭建
- [【Linux命令003】ln建立软链接
- linux [] 与 test 命令 进行 条件判断
- linux MySQL重置密码
- 移植代码到linux内核中大概流程
- Linux sed和awk的用法
- linux 系统查看目录下各目录大小
- CentOS 7.1 Bridge启用STP报错"Master connection not found or invalid"
- linux mysql 数据库开启外部访问设置指南
- linux MISC 驱动模型分析
- Linux Vim使用技巧【简】
- Linux下安装matlab
- 《Linux内核设计与实现》第一二章读书笔记
- ClamAV 0.99 反病毒软件自动安装脚本
- linux kernel编译Makefile和Kconfig,make menuconfig详解
- linux windows 动态库 静态库
- RSA秘钥对生成(Linux下使用Openssl)
- 深入理解Linux内核之内存管理