hadoop使用之 做一个简单的分发同步脚本使用 rsync

需求:写一个脚本,当输入某个文件的名称时,其他节点对应的文件也产生更新

文件名 : xsync.sh

#!/bin/bash
# 1. 获取输入的参数的个数,如果没有参数,直接退出
put_count=$#
if(($put_count==0));then
	echo "没有输入需要同步的文件名称!请在运行是输入 ! 例如 ./xsync test.txt";
	exit;
fi

# 2. 获取文件名称
p1=$1
file_name=`basename $p1`
echo file_name=$file_name

# 3. 获取上级目录的绝对路径
put_dir=`cd -P $(dirname $p1);pwd`
echo put_dir=$put_dir

# 4. 获取当前用户名称
user=`whoami`

# 5. 循环同步到各个节点
for i in $(seq 1 2)
do
	echo -------------------slave0$i---------------------
	rsync -rvl $put_dir/$file_name $user@slave0$i:$put_dir
done
chmod 777 xsync.sh
./xsync.sh xsync.sh

在master运行的结果如图 :
master在slave01查看结果如下:(原本没有 xsync.sh 这个文件)
slave01

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值