标题: [文件操作] 如何用批处理做增量备份 [打印本页]
作者: petertch 时间: 2011-11-25 13:51 标题: 如何用批处理做增量备份
本帖最后由 petertch 于 2011-11-25 15:47 编辑
RT,
想用批处理做一个增量备份,
有一个备份文件夹啊c:\backup
每天将要备份的文件放进去,
然后晚上通过windows的任务计划执行批处理,
来备份到E:\backup 文件夹里,
每天只备份增量的部分,就是当天放进去的。
增量怎么锁定啊 , 很头疼啊~!
先谢谢高手们~!~
刚刚没有解释清楚 , 这里我举个例子吧。
例:
[第一天]
我放了如下几个文件进入 c:\backup
AAA (这个是文件夹,假定文件夹下还有文件,这里不写出来了)
AAA.TXT (修改日期是很早以前,假定是一年前的)
AAA2.TXT
晚上通过WINDOWS自带的任务计划调用BAT,
则应该自动把上面的
AAA (文件夹包括其下的子文件夹,文件)
AAA.TXT
AAA2.TXT
都复制到了E:\backup
[第二天]
我又放了如下几个文件进入 c:\backup
BBB (这个是文件夹,假定文件夹下还有文件,这里不写出来了)
BBB.TXT (修改日期是很早以前,假定是一年前的)
BBB2.TXT
则现在c:\backup下有如下内容了:
AAA (这个是文件夹,假定文件夹下还有文件,这里不写出来了)
BBB (这个是文件夹,假定文件夹下还有文件,这里不写出来了)
AAA.TXT
AAA2.TXT
BBB.TXT
BBB2.TXT
晚上再调用这个BAT时候,就应该自动把
BBB (文件夹包括其下的子文件夹,文件)
BBB.TXT
BBB2.TXT
这三个文件拷贝到E:\backup,
关键!是只把这三个文件拷贝进去,是增量备份。
第三天的话,同上,有CCC之类,
只复制CCC相关的,AAA与BBB不复制。
大致就是这个意思。高手们请参阅~!!
作者: yangfengoo 时间: 2011-11-25 14:22
先取文件时间,然后根据时间来判断是否为当天
作者: CrLf 时间: 2011-11-25 14:24
本帖最后由 CrLf 于 2011-11-25 14:25 编辑
- xcopy /d /y /s c:\backup e:\backup\
复制代码
完事...
作者: petertch 时间: 2011-11-25 15:08
完事...
CrLf 发表于 2011-11-25 14:24
额 楼上两位兄弟, 我主帖没说明清楚。。
因为有些时候可能仅仅是把硬盘其他地方需要备份的文件放到c:\backup下
文件本身是没有修改过的,所以最后修改日期是不会变的。
因此不能通过修改日期来判断啊。
并且,每天要备份的文件也应该是不同的
作者: CrLf 时间: 2011-11-25 15:30
回复 4# petertch
能否在顶楼举个例子呢?
作者: petertch 时间: 2011-11-25 15:59
回复 petertch
能否在顶楼举个例子呢?
CrLf 发表于 2011-11-25 15:30
版主~顶楼有更新了~
作者: CrLf 时间: 2011-11-25 17:09
本帖最后由 CrLf 于 2011-11-25 18:18 编辑
那就不覆盖...- @echo off&setlocal enabledelayedexpansion
- for /l %%a in (1 10 8000) do set n=!n!nnnnnnnnnn
- ::保存八千个 n 到变量 n
- echo !n!^&echo !n!^&echo !n!|xcopy /s c:\backup e:\backup\
- ::用管道将两万四千个 n 传递给 xcopy,让它等待输入的时候自动从缓冲区读取一个 n,于是选择不覆盖已有文件。
复制代码
作者: petertch 时间: 2011-11-25 17:23
那就不覆盖...
CrLf 发表于 2011-11-25 17:09
谢谢
8过试了下没有用啊 米有提示 也米有复制
作者: abcdshenji 时间: 2011-11-25 17:51
本帖最后由 abcdshenji 于 2011-11-25 17:52 编辑
- for /f "delims=" %%i in ('findstr /sm ".*" c:\backup\*') do (
- if not exist "e:%%~pnxi" xcopy "%%~i" "e:%%~pi" /e
- )
复制代码
作者: victory2589 时间: 2011-11-25 17:59
回复 7# CrLf
版主能把代码加注解吗?
作者: CrLf 时间: 2011-11-25 18:08
回复 10# victory2589
已注释
作者: 523066680 时间: 2011-11-25 20:16
本帖最后由 523066680 于 2011-11-25 20:17 编辑
关于备份,更新备份。
推荐robocopy
微软官网的下载+安装包链接:
http://www.microsoft.com/downloa ... ang=en&id=17657
“Robocopy.exe 是 微软在Windows server 2003 Resource Kit Tools 里面提供的程序来做备份的,现在Windows Vista系统中已经自带了这个命令行程序。”
这个工具是微软公司推出的,配合bat批处理,使用非常稳定。
xp win7系统下,都可以正常使用。
作者: petertch 时间: 2011-11-28 14:57
谢谢楼里的版主与各位兄弟的帮助
问题现在基本解决了 ,谢谢~!!
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |