更新集群文件scp简化脚本

经常会遇到集群中的某一个文件需要同步更新。
手动获取到文件绝对路径再使用scp命令有些繁琐
由于所有需要更新的文件在集群存储的路径都是相同的
于是写了一个简化脚本(自用)

#!/bin/bash
filepath=`cd $(dirname $1); pwd`
nodeNums=`expr $# - 1`
if [ $nodeNums -lt 1 ]
then
        echo '参数少'
else
        for((i=2;i<=$#;i++))
        do
        scp -r $1 hadoop@${!i}:${filepath}
        echo ${!i}
        done
fi

其中在获取第i个参数时使用了${!i}
这个用法也是网上看来的,为什么!在这里有这样的用处暂时也是费解,
但比使用shift的方式
或者这样

for i in ${a[@]};do          

echo $i

看起来要舒服的多
默默记下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值