windows脚本bat做文件备份

@ECHO OFF
echo 切换到当前目录...
cd /d %~dp0% 
echo 开始复制Code1...
echo d | XCOPY  Code1 ..\备份\bakdir\Code1  /s  /e /y /EXCLUDE:Exclude.txt
echo 开始复制Code2...
echo d | XCOPY Code2 ..\备份\bakdir\Code2  /s  /e /y 
echo 开始复制Code3...
echo d | XCOPY Code3 ..\备份\bakdir\Code3  /s  /e /y

::以下需要时再开启
::echo 开始复制Code4...
::echo d | XCOPY Code4 \备份\bakdir\Code4  /s  /e /y
::echo 开始复制Code5...
::echo d | XCOPY  Code5 \备份\bakdir\Code5  /s  /e /y
echo 开始复制Code6...
echo d | XCOPY  Code6 ..\备份\bakdir\Code6  /s  /e /y

set "YYYYmmdd=%yyyy%%mm%%day%"
set YYYYmmdd=%date:~0,4%%date:~5,2%%date:~8,2%
set "YYYYmmdd=%YYYYmmdd: =0%"
set hhmiss=%time:~0,2%%time:~3,2%%time:~6,2%
set "hhmiss=%hhmiss: =0%"
set filename=BakAllProgram%YYYYmmdd%_%hhmiss%.rar

cd ..

echo 进入备份目录
echo %cd%

::源路径
set sourcesDir=%cd%\备份\bakdir
::目标路径
set zipfile=%cd%\备份/%filename%
echo WINRAR压缩文件...
"C:\Program Files\WinRAR\Rar.exe" a -as -r -ep1 "%zipfile%" "%sourcesDir%"
echo 删除备份文件...
rd/s/q %cd%\备份\bakdir
pause
EXCLUDE.txt 文件内容:
要排除的文件或文件夹在另一个TXT(如EXCLUDE.txt)文件中!本例内容如下。

.hg\
css
exclude.txt
.bat
.hgignore
排除了(不会拷贝)2个文件夹:
.hg
css
 排除了(不会拷贝)2种类型的文件:
.bat
.hgignore
排除了(不会拷贝)1个文件: exclude.txt
 

源文件结构:
│  .hgignore
│  copy-all-to-webserver.bat
│  dae.log
│  dae.php
│  dbInfo.php
│  dbOp.php
│  exclude.txt
│  heartHop5s.php
│  hhh.sql
│  pdo.php
│  prglist.json
│  stbOp.php
│  test.html
│  ver.php
│  
├─.hg
│  │  00changelog.i
│  │  cur-message.txt
│  │  dirstate
│  │  last-message.txt
│  │  requires
│  │  thgstatus
│  │  undo.backup.dirstate
│  │  undo.bookmarks
│  │  undo.branch
│  │  undo.desc
│  │  undo.dirstate
│  │  
│  ├─cache
│       branch2-served
│        
├─css
│      hhh.css
│      
└─js-wf
        hhh.js
        wlib.js
        

 

posted @ 2021-04-19 15:02  畅聊科技  阅读(750)  评论(1编辑  收藏  举报