[WIN]任务计划+批处理实现异地文件备份

上一篇 / 下一篇  2008-04-13 16:50:37

思路:

1、首先,本地文件备份,压缩成rar。需要安装压缩工具,本人使用winrar,安装路径为C:\Program Files\WinRAR\winrar.exe

2、异地备份,通过FTP实现

3、存贮空间有限,任务计划删除

------------------------------------------------我是淫贱的分割线--------------------------------------

容-灾-容-灾,所以要做备份,本次需要将文件夹“xiemen”所有文件及目录全部备份

1、在D盘建立一个备份用的文件夹命名为 xiemen_back,建立一个txt文档保持成rar_bak.bat,放在d:\rar_bak.bat,把下面命令复制粘贴进去:

echo off
echo 压缩文件进行备份中...
C:\"Program Files"\WinRAR\winrar.exe a D:\xiemen_bak\xiemen.rar D:\xiemen
echo 压缩完成
echo

上面的意思是使用C盘下XXX压缩工具,将“xiemen”文件夹备份成xiemen.rar放到D:\xiemen_bak\目录,"Program Files"用引号因为bat命令里文件名有空格需要引号引起来

添加到任务计划,文件比较大,选个人少的时间,半夜3点执行d:\rar_bak.bat,即每天凌晨3点进行压缩

2、建立一个用做备份的FTP帐户,目录指到D:\xiemen_bak,权限只读就OK了。

3、在另外一台机,新建txt文档保存为ftp_bak.bat,把下面命令复制粘贴进去:

ftp -n -s:1.txt

4、建立一个文档保存为1.txt,把下面复制粘贴进去:

Openwww.chinaitlab.com
User backup
1234
cd database
mget *
y
y
y
y
y
y
y
Bye
Quit
Exit

上面3、4意思用FTP打开www.your.com,User后面是备份FTP的帐户,1234是密码,mget *将目录下的所有文件下载(注意命令不能打开子目录,所以只是文件不是下载文件夹),是否覆盖所以很多y=yes

添加到计划任务,大文件备份一般不需要很频繁,所以添加到任务计划,每周日23:40分进行

5、备份文件起码要保存14天吧,那是留最后的2个文件,把之前的删除,又建立一个BAT文档,复制粘贴:

@echo off&setlocal EnableDelayedExpansion
::取2天之前的日期.set _tian=13下面这句中的13代表天数.
set "_tian=13"
>tmptmp.vbs echo wscript.echo dateadd("d",-%_tian%,date)
for /f "tokens=1,2,3* delims=-" %%i in ('cscript /nologo tmptmp.vbs') do (
set "y=%%i"&set "m=%%j"&set "d=%%k"
)
if %m% LSS 10 set "m=0%m%"
if %d% LSS 10 set "d=0%d%"
set "rq=%y%-%m%-%d%"
echo.&echo 注意:即将删除 %rq% 以前建立的文件

::判断文件
for /f "delims=" %%a in ('dir/b/a-d e:\xiemen_bak\*.rar') do (
set "a=0"
for /f "skip=4 delims=" %%b in ('dir/tc "e:\xiemen_bak\%%a"') do (
set /a "a+=1"
if !a! equ 1 (
set "var=%%b"
for /f "tokens=1 delims= " %%c in ("!var!") do set "str=%%c"
if !str! lss !rq! del /q "e:\xiemen_bak\%%a"
)))
del/q temtem.vbs
pause

意思删除e:\xiemen_bak文件夹下的13天前的rar文件.


TAG: 任务计划 批处理 异地备份

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar