您正在使用 IPV4 [34.204.198.73] 访问本站,您本次已经查看了 1 页
用户名: 密 码: 验证码:     用QQ登录本站
首页 软件 编程 笑话 知识 公告 台风 日历 计算器
悟空收录网       [公益]保护绿色环境,构建和谐社会      

【腾讯云】2核2G4M云服务器新老同享99元/年,续费同价      
[公益] 地球是我家,绿化靠大家      
2024年 七夕节 025
2025年 高 考 326
2025年 元 旦 169
2025年 春 节 197
 
您现在的位置:首页 >> Linux >> 内容
本类新增
本类热门
linux如何编写同步文件的脚本
内容摘要: linux编写同步文件的脚本搭集群最麻烦的就是修改配置文件,如果只用修改一个机器上的配置文件,然后用一个脚本就可以把配置文件同步到其他机器上,岂不快哉!编写一个名为xsync的脚本文件作用:将当前机器的文件,同步到集群所有机器的相同路径下!hadoop102:/A/a,执行脚本后,将此文件同步到集群中所有机器的/A/a用户在使用xsync时,只需要传入要同步......
linux编写同步文件的脚本

搭集群最麻烦的就是修改配置文件,如果只用修改一个机器上的配置文件,然后用一个脚本就可以把配置文件同步到其他机器上,岂不快哉!

编写一个名为xsync的脚本文件

作用:将当前机器的文件,同步到集群所有机器的相同路径下!

hadoop102:/A/a,执行脚本后,将此文件同步到集群中所有机器的/A/a

用户在使用xsync时,只需要传入要同步的文件即可

xysnca

不管a是一个相对路径还是绝对路径,都需要将a转换为绝对路径!

文件的绝对路径=父路径+文件名:

父路径:dirpath=$(cddirname/home/atguigu/hi;pwd-P)

文件名:filename=basenamehi

pwd的-P参数是为了避免出现软链接导致的路径问题,-P可以使软链接显示出真实的链接

核心命令:

for(())

do

rsync-rvltpath1

done

正式文件:

#!/bin/bash

#校验参数是否合法

if(($#==0))

then

echo请输入要分发的文件!

exit;

fi

#获取分发文件的绝对路径

dirpath=$(cd`dirname$1`;pwd-P)

filename=`basename$1`

echo要分发的文件的路径是:$dirpath/$filename

#循环执行rsync分发文件到集群的每条机器

for((i=101;i<=103;i++))

do

echo---------------------hadoop$i---------------------

rsync-rvlt$dirpath/$filenameusername@hostname$i:$dirpath

done

最后别忘了把xcall文件放进家目录下的bin目录

如果没有就新建一个bin目录

因为这目录是在全局环境变量中

放进去后无论在哪个目录下都可以执行这个脚本文件!

版权声明:本内容来源于网络,如有侵犯您的版权,请联系站长,本站收到您的信息后将及时处理。
上一篇:linux如何将某个文件夹移动到另一个文件夹下

 

下一篇:linux两台服务器实现自动同步文件

发布日期:2024/6/29
手机扫二维码直达本页
发布时间:21:40:14
点  击:73
录  入:壹家怡园
相关文章
Baidu
YiJiaCMS 7.5.1 build240527(MSSQL) 闽ICP备05000814号-1
本空间由腾讯云(轻量应用服务器)提供,速盾网络提供加速防护
运行时间载入中.....