文档章节

shell脚本复制文件夹内容到另外的文件夹,如果存在则自动备份

江上轻烟
 江上轻烟
发布于 2015/08/15 13:01
字数 178
阅读 53
收藏 0

有时我们需要将一个文件夹覆盖到我们的工作目录,但需要自动备份已经存在的文件,一个一个去备份太麻烦了,全部备份又没有必要。shell脚本可以很好滴完成这个任务。代码如下:

#!/bin/sh

upload_dir=/alidata/www/sh/useful-shell-script/upload/

www_dir=/alidata/www/sh/useful-shell-script/www/

backexist()

{

filelist=`ls $1`

for file in $filelist

do

if [ -f $1$file ]

then

if [ -f $2$file ]

then

cp $2$file $2$file”_bak_”`date +%Y-%m-%d`

fi

else

backexist $1$file”/” $2$file”/”

fi

done

}

backexist $upload_dir $www_dir

cp -R $upload_dir”.” $www_dir


博客原文:http://back.zhizhi123.com/?p=85

© 著作权归作者所有

共有 人打赏支持
江上轻烟

江上轻烟

粉丝 1
博文 13
码字总数 442
作品 0
海淀
程序员
centos mysql自动备份脚本

在/home路径下建立google文件夹,在google文件夹下建立dbbackup(存放压缩文件)和dbmysql(存放sql脚本),并对文件夹授权: chmod 755 db_backup chmod 755 db_mysql 然后在google文件夹下...

凯文加内特
2016/05/20
119
1
Shell脚本:使用rsync备份文件/目录

本文我们介绍一个shell脚本,用来使用rsync命令将你本地Linux机器上的文件/目录备份到远程Linux服务器上。使用该脚本会以交互的方式实施备份,你需要提供远程备份服务器的主机名/ip地址和文件...

酱醋茶丶
2015/10/28
0
0
Ant实现对Linux服务器上WebLogic应用服务自动部署发布

使用Ant对WebLogic应用服务进行自动备份应用包,上传新应用包,重新启动服务。进而实现应用服务的自动部署。 一、将各个WebLogic应用服务添加自动停用服务及其重启shell脚本 kill.sh 供另一个...

Arthur126
2015/12/23
92
0
linux/unix系统间文件备份脚本

这是我之前写的一个shell脚本,用于linux/unix系统间的文件自动备份。 脚本的主要功能有: 用于不同服务器间当天的文件的同步或拷贝;需要expect命令支持,RHEL和AIX测试正常,需要expect命令...

zaa47
2017/05/19
0
0
如何让域中的计算机开机自动映射网络上的共享文件夹

如何让域中的计算机开机自动映射网络上的共享文件夹 需求: 1、域中每一个用户使用文件服务器中的一个文件夹做为网络磁盘 2、文件服务器中如果有此用户的文件夹则直接映射为W盘,如果没有则用...

sunx990
2016/03/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

八月新增开源项目:假装自己是图形界面的 Git 命令行工具

每月新增开源项目。顾名思义,每月更新一期。我们会从社区上个月新收录的开源项目中,挑选出有价值的、有用的、优秀的、或者好玩的开源项目来和大家分享。数量不多,但我们力求推荐的都是精品...

编辑部的故事
8分钟前
2
0
20180918 find命令与Linux文件扩展名

命令find 用来查找搜索文件。 搜索文件相关命令: which 从环境变量里的目录中去搜索 whereis(不常用) 从一个固定的库中搜索 locate(需要单独安装 yum install -y mlocate) 查询时会从/var/...

野雪球
10分钟前
0
0
一步步编写自己的PHP爬取代理IP项目(二)

这一章节我们正式开展我们的爬虫项目,首先我们先要知道哪个网站能获取到免费代理IP,目前比较火的网站有西刺代理,快代理等,这里我们拿西刺代理作为例子。 西刺代理官网: http://www.xic...

NateHuang
31分钟前
0
0
GO 数组相关操作

package mainimport("fmt""math/rand""time")func main() {//数组的几种定义方式var arr1 [3]int = [3]int{1,2,3}var arr2 = [3]int{4,5,6}arr3 := [3]string{"h", "w", ......

汤汤圆圆
57分钟前
1
0
JAVA 中interrupt、interrupted和isInterrupted的区别

首先,我们说明下三个方法的功能 interrupt() 向当前调用者线程发出中断信号 isinterrupted() 查看当前中断信号是true还是false interrupted() 是静态方法,查看返回当前中断信号并将中断信号...

我爱春天的毛毛雨
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部