有时如果想要将一台节点上的内容发送到其它节点上,可以使用rsync命令。

!/bin/bash
##################################################################
##脚本功能:将文件分发到其它节点
##
##示例:xsync 文件名或文件目录
##################################################################STEP1: 获取参数。若没有参数,则返回错误信息,并退出。$#是获取所有参数的个数
if [ $# -lt 1 ];thenecho '至少要传入1个参数!'exit;
fi#STEP2: 遍历集群
for host in hadoop103 hadoop104
doecho ======================= $host ====================#STEP3: 遍历所有文件。$@是获取所有参数for file in $@do#STEP4: 文件是否存在if [ -e $file ];then#STEP5: 获取父目录#dirname是去除文件名中的非目录部分,传入的参数可以是一个绝对路径;pdir=$(cd -P $(dirname $file); pwd)#STEP6: 获取当前文件的名称fname=$(basename $file)#STEP7: SSH到目标节点,创建目录ssh $host "mkdir -p $pdir"#STEP8: 分发文件#a表示递归传输,v表示详细模式输出rsync -av $pdir/$fname $host:$pdirelseecho '$file is not exists!'fidone
done

注意:

  1. 使用该脚本前最好配置SSH无秘登录,否则需要手动输入密码;
  2. 该脚本应该放置/bin目录下,并赋执行权限:chmod +x xsync,这样即使是root文件,也可以通过sudo 命令调用传输。

Linux文件群发脚本相关推荐

  1. linux文件比较脚本,shell脚本之对比不同目录的下的文件

    让负责一部分代码的版本,担心公共目录下有人可能会稍微修改部分代码,因此把代码备份到自己的一个目录中,上传svn之前,如果发现公共目录的下的文件被修改,则找出变化部分,避免出现不可知的文件变化. 使用d ...

  2. Linux环境Shell脚本上传下载阿里云OSS文件

    为什么80%的码农都做不了架构师?>>>    Linux环境Shell脚本上传下载阿里云OSS文件 背景 工作中由于我们项目生成的日志文件比较重要,而本地磁盘空间有限存储不了多久, ...

  3. Linux下shel脚本之批量修改文件扩展名

    Linux下shel脚本之批量修改文件扩展名 一.脚本要求 二.脚本内容 三.运行脚本 一.脚本要求 二.脚本内容 三.运行脚本 一.脚本要求 1.在/data/tmp/下的所有文件扩展名改为.py ...

  4. linux配置定时删除日志文件,Linux使用shell脚本定时删除历史日志文件

    Linux使用shell脚本定时删除历史日志文件,文件,小时,时间,目录,脚本 Linux使用shell脚本定时删除历史日志文件 易采站长站,站长之家为您整理了Linux使用shell脚本定时删除历史 ...

  5. 文件监控脚本 -- Linux bash

    文件监控脚本 – Linux bash md5算法及生成方式 MD5值等同于文件的ID,它的值是唯一的. 如果文件已被修改(例如嵌入式病毒,特洛伊木马等),其MD5值将发生变化. 因此,一些常规下载U ...

  6. Linux磁盘空间爆满怎么办?定时文件清理脚本配置实现

    在Linux系统上跑任务会遇到系统磁盘空间爆满的情况,表现出来的现象是程序运行报错,或执行缓慢.记录下Linux磁盘空间占用的查看方法和文件清理脚本定时触发配置的实现. 一.Linux磁盘空间占用分析 ...

  7. windows与Linux实时传输数据,I01 物理隔离条件下Windows与Linux服务器的文件传输脚本...

    title: I01 物理隔离条件下Windows与Linux服务器的文件传输脚本author: Adolph Leecategories: 进阶tags: paramiko打怪升级mathjax: ...

  8. linux怎么运行脚本文件路径,关于linux中执行脚本或程序时指定的路径

    假设/mnt/bin 目录下存在一个名为 hello.sh 的可执行文件. 1. 若当前目录是 /mnt/bin ,可以使用 ./hello.sh 来执行这个可执行文件,但是使用 hello.sh 就 ...

  9. linux给脚本文件赋权限,linux编写.sh脚本并赋权限问题

    linux编写.sh脚本并赋权限问题 今日打包编译项目时,发现缺少一个git pull更新项目的脚本,所以在linux编写了一个gitpull.sh脚本,能够实现更新项目的需求. 1.首先vi  gi ...

  10. linux 命令脚本文件,Linux编写shell脚本执行多个命令

    背景:Linux做项目写完代码之后,需要用一个文件夹下多个文件进行测试,而且需要对于同一个文件执行多个命令,这个时候如果一个一个命令输入比较繁琐,于是写了一个简单的命令脚本如下: #! /bin/ba ...

最新文章

  1. Mac下使用Homebrew 安装MySQL
  2. 深度学习100例-生成对抗网络(DCGAN)手写数字生成 | 第19天
  3. nothing comes free
  4. Asp.net中服务端控件事件是如何触发的(笔记)
  5. watch深度监听数组_vue watch普通监听和深度监听实例详解(数组和对象)
  6. php一些错误的显示问题
  7. VirtualBox更改默认路径
  8. mysql5.7误删管理员root账户ERROR1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: NO)
  9. .sql文件_优化体系--sql_trace+10046事件(上篇)
  10. Solidity基础入门知识---函数的访问权限和可见性
  11. Ruby 2.0 发布首个预览版
  12. SharePoint 站点集和子站点数据互相读取
  13. 计算机组成原理:最详细笔记
  14. 排序(二分插入排序)
  15. 离散数学与组合数学汇总
  16. 已解决-Windows10没有windows照片查看器-Windows10打开照片是黑底的
  17. 技嘉主板前置面板没有声音的解决
  18. 借助JavaCV实现android手机查看PC摄像头实时视频
  19. 小米路由器R3G 原厂BootLoader,eeprom备份
  20. 安装Ubuntu16.04视频播放器smplayer

热门文章

  1. Premiere cs6导出MP4格式视频
  2. 直接下载:Windows 10正式版官方原版镜像!
  3. 深度思考 | 比低水平效勤奋重要百倍
  4. c# webbrowser html5,C#设置WebBrowser IE浏览器版本
  5. Android拍照,相册选择图片以及Android6.0权限管理
  6. php开发erp思路,ERP遇到业务逻辑问题,求思路
  7. 慕测平台的使用—— 在eclipse上安装mooctest插件
  8. shiro反序列化漏洞
  9. 初学者Arcgis教程大全
  10. 方舟仙境服务器什么时候修复,方舟生存进化官服多久删一次服务器