标题: [文本处理] [分享]自己写的备份文件或文件夹的批处理代码 [打印本页]
作者: 幼稚园 时间: 2011-12-1 22:39 标题: [分享]自己写的备份文件或文件夹的批处理代码
自己写的保存文件(或文件夹)的代码,会保存为10/100恢复记录的压缩文件(但是文件夹不直接生成压缩文件,但会生成一个压缩用的批处理,运行后就能把文件夹压缩,并且会自动删除本身)。- @echo off
- title 保存文件(或文件夹)
- if not exist d:\历史文件保存文件夹 md d:\历史文件保存文件夹
- :begin
- cls
- set "pathly=exit"
- echo,
- echo,------------------d:\历史文件保存问夹
- echo,
- echo,------------------只能拖到一个文件到批处理。
- echo,
- echo,------------------文件保存为压缩文件,10%%100的恢复记录。
- echo,
- echo,------------------文件夹生成压缩用的批处理但不压缩,运行后会自动删除。
- echo,
- echo,------------------路径中不要含特殊字符(无法扩充),%%用%%来转义
- echo,
- set /p pathly=路径
- call :获取源信息 %pathly%
- if "%pathly%"=="exit" goto exit
- if "%type%"=="" (
- goto 文件夹
- ) else goto 文件
- rem ----------------------------------------------------------一层goto区
- :exit
- cls
- echo,即将退出
- ping /n 2 127.1>nul
- exit
- :文件夹
- xcopy /e "%pathly%" "d:\历史文件保存文件夹\%name%\"
- (echo,@echo off
- echo,start "" winrar.exe a -df -rr"100p" "(%date%%time:~0,2%时%time:~3,2%分%time:~6,2%秒) %name%" "%name%"
- echo,echo,完成
- echo,ping /n 2 127.1^>nul
- echo,del /q /s %%0
- echo,exit
- )>"d:\历史文件保存文件夹\(%date%%time:~0,2%时%time:~3,2%分%time:~6,2%秒) %name%.bat"
- goto begin
- :文件
- copy /z "%pathly%" "d:\历史文件保存文件夹\%name%%type%"
- start "" winrar.exe a -ep -df -rr"100p" "d:\历史文件保存文件夹\(%date%%time:~0,2%时%time:~3,2%分%time:~6,2%秒) %name%" "d:\历史文件保存文件夹\%name%%type%"
- goto begin
- rem ----------------------------------------------------------一层goto区 end
- rem ----------------------------------------------------------一层call区
- :获取源信息
- set pathly=%~1
- set pathmb=%~dp1
- set name=%~n1
- set type=%~x1
- goto :eof
- rem ----------------------------------------------------------一层call区 end
复制代码
作者: andyrave 时间: 2012-1-5 14:26
支持原创!!!
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |