`
zengshaotao
  • 浏览: 761901 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

shell备份发布的文件

    博客分类:
  • unix
 
阅读更多

待备份的文件路径:/gaps/test/20140417/gaps/sblib/…..,即需要发布的内容

生产的目录结构:/gaps/sblib/…..

备份时:发布的内容如果已经存在,则拷贝生产上相应的内容。发布的内容是新增的,生产上肯定没有。

#!/bin/bash

#待备份文件的根目录,该目录与备份脚本平级

sourcepath=""

copyroot=`pwd`

echo $copyroot

dateparam=`echo $1`

echo $dateparam

sourcepath=$copyroot"/"$dateparam

#文件备份的目标根目录

aimpath="/gaps/bak"

copyfolder()

{

  #列出文件夹下所有的文件

  name=`ls -l $1 | awk '{print $9}'`

  for i in $name

  do

    pathname=`echo $1"/"$i`

    if [ -d "$pathname" ];then

      copyfolder $pathname

    elif [ -f "$pathname" ];then

      echo "----------------------------"

      #根据目录获得文件,也可以使用basename命令

      filename=`echo ${pathname##*/}`

      #得到文件的路径,不包含文件本身,NF是一个内置变量

      comptemp=`echo "$pathname"|awk -F '/' '{for(k=5;k<=NF-1;k++) print $k}'`

      compfilepath=""

      for j in $comptemp

       do

         compfilepath=$compfilepath"/"$j

       done

      echo "file name is:"$filename

      echo "compfilepath is:"$compfilepath

      compfile=$compfilepath"/"$filename

      echo "____________________________"

      if [ ! -f "$compfile" ];then

        echo "file is not exist"

      else

        datev=`date +"%Y-%m-%d"`

        tamp=$aimpath"/"$datev

        tamp=$tamp$compfilepath

        mkdir -p $tamp

        cp $pathname $tamp

      fi

    else

      echo "error"

    fi

  done

}

copyfolder $sourcepath

分享到:
评论

相关推荐

    sringboot项目自动化发布shell脚本

    springboot自动化发布脚本,shell文件,针对服务器上使用。

    关于发布程序上线和回滚的shell

    #指定发布管理日志的路径 记录发布过程,完成文件备份和文件patch PUB_ROOT=/home/chenlong/Publish === 使用方法 ===: #./apply.sh blog /home/chenlong/patch_sh/list20100520.txt 例如 -bash-3.2$ ./...

    常用shell 脚本,dos攻击防范,

    常用shell脚本, Dos攻击防范(自动屏蔽攻击IP).sh 一键部署等等 Linux系统发送告警脚本.sh MySQL数据库备份单循环.sh...目录文件变化监控和实时文件同步.sh 自动发布Java项目(Tomcat).sh 自动发布PHP项目脚本.sh

    18个Linux Shell脚本经典案例视频.zip

    18个Linux Shell脚本经典案例(1-18) 脚本 Dos攻击防范(自动屏蔽攻击IP) Linux系统发送告警脚本 MySQL数据库备份单循环 MySQL数据库备份多循环 nginx 访问访问日志按天切割 nginx nginx访问日志分析脚本 一键查看...

    github-backup:用于将 GitHub 存储库备份到本地 git 包的 Shell + Python 脚本

    特此授予任何人免费获得本软件副本和相关文档文件(“软件”)的许可,不受限制地处理本软件,包括但不限于使用、复制、修改、合并的权利、发布、分发、再许可和/或出售软件的副本,并允许向其提供软件的人员这样做...

    Linux Shell脚本经典案例合集

    目录文件变化监控和实时文件同步.sh 批量创建100用户并设置密码脚本.sh 批量检测网站是否异常脚本.sh 批量主机远程执行命令脚本.sh 一键部署LNMP网站平台脚本.sh 一键查看服务器资源利用率.sh 自动发布Java项目...

    关于发布程序上线和回滚的一个想法

    diff -r -b 比较 备份环境 和 发布环境 文件差异; 再次确定修改是否正确 PATCH_ROOT 下的文件夹和文件 发布到正式环境 即可; 完成上线后,要检查系统功能是否正确。 4. 回滚工作: BAK_ROOT 下的文件夹和文件 ...

    shell脚本:备份数据库、代码上线

    文章目录备份MySQL数据库代码上线发布脚本 备份MySQL数据库 场景: 一台MySQL服务器,跑着5个数据库,在没有做主从的情况下,需要对这5个库进行备份 需求: 1)每天备份一次,需要备份所有的库 2)把备份数据存放到/...

    Linux_unix_shell第一部分编程(共两部分)

    18.5.6 使用for循环备份文件 183 18.5.7 多文件转换 183 18.5.8 多sed删除操作 184 18.5.9 循环计数 184 18.5.10 for循环和本地文档 184 18.5.11 for循环嵌入 185 18.6 until循环 186 18.6.1 简单的until循环 186 ...

    FlashFXP 4.2 简体中文便携版

    你可以使用FlashFXP 来发布和维护你的网站、上传下载基于FTP的文件、转移或者备份远程文件、与朋友远程分享文件等。 FlashFXP 4.2.6.1872 简体中文注册版 有哪些改进: 1、针对Windows 7改进了程序的性能;支持SFTP...

    FlashFXP 4.4.0完美破解版本

    你可以使用FlashFXP 来发布和维护你的网站、上传下载基于FTP的文件、转移或者备份远程文件、与朋友远程分享文件等。 支持文件夹(带子文件夹)的文件传送、删除; 支持上传、下载及第三方文件续传; 可以跳过...

    flashfxp4.1破解版FTP传输工具.rar

    你可以使用FlashFXP4.1来发布和维护你的网站、上传下载基于FTP的文件、转移或者备份远程文件、与朋友远程分享文件等。官方更新说明:针对Windows 7改进了程序的性能;支持SFTP发布SSH文件传输协议; 支持远程文件...

    FlashFXP_v4.4.0

    你可以使用FlashFXP 来发布和维护你的网站、上传下载基于FTP的文件、转移或者备份远程文件、与朋友远程分享文件等。 支持文件夹(带子文件夹)的文件传送、删除; 支持上传、下载及第三方文件续传; 可以跳过指定的...

    Linux 多tomcat服务 统一安装 统一部署 工具 shell编写

    保留原始备份 方便部署前后配置对比 操作简单 需求扩展能力强 动化统一安装部署 包括:上传解压war包 同步配置 启动服务 监控服务等 list ll one sh pass war startup sh syn cn two sh 部署支持统一安装...

    zapfwiki-backup:ZaPF wiki 的自动备份

    为了保存 ZaPF-Wiki 的当前版本,请简单地执行make ,从而调用备份脚本并使用备份创建打包文件,并将输出写入日志文件。 网站 该项目发布在。 版权/许可 版权所有 (C) 2012 菲利普克劳斯 该程序是免费软件。 您可以...

    Sonicwall-Backup-Scripts:一对用于备份Sonicwall安全设备的bash脚本

    Sonicwall备份脚本用于从Sonicwall安全设备提取备份文件的脚本。 在SonicOS 6.5推出云备份和计划备份功能之前,我正在为Sonicwalls开发基于Web的备份系统。 6.5版发布后,我放弃了该项目,今年早些时候重新访问了该...

    快速部署工具(解压后路径不要包含中文).zip

    目的:为解决远程部署时的各种繁琐重复工作而设计的小工具,第一次配置好后,以后发布只需要将所需文件复制到file目录即可一键发布 功能介绍: 1. 自动备份将要上传的同名文件,备份格式为原文件名+日期(注:.sh文件...

    网管教程 从入门到精通软件篇.txt

     注意:使用 bootcfg /rebuild 之前,应先通过 bootcfg /copy 命令备份 boot.ini 文件。  bootcfg /scan 扫描用于 Windows 安装的所有磁盘并显示结果。  注意:这些结果被静态存储,并用于本次会话。如果在...

Global site tag (gtag.js) - Google Analytics