怎么用批处理压缩前一天的文件

大神们请帮帮忙,有F:\123这个文件夹,里面每天会自动备份像20171016,20171017,20171018这样的文件夹,每天都有一个,但生成的时间不定,比如说我今... 大神们请帮帮忙,有F:\123这个文件夹,里面每天会自动备份像20171016,20171017,20171018这样的文件夹,每天都有一个,但生成的时间不定,比如说我今天日期是20171018,我需要批处理把20171017的文件夹压缩后移动到E:\456这个文件夹里,如果当天没有20171017的文件夹就需要提示“”没有数据“”。

应该怎么写批处理??、
展开
 我来答
依梦琴瑶
高粉答主

2017-10-18 · 说的都是干货,快来关注
知道顶级答主
回答量:6.9万
采纳率:82%
帮助的人:1.7亿
展开全部
@echo off & title 一键压缩备份昨天数据 By 依梦琴瑶
cd /d %~dp0
setlocal enabledelayedexpansion
 
set StrFolder=F:\123

set TarFolder=E:\456

set Path=%Path%;%ProgramFiles%\WinRAR

echo wscript.echo DatePart("yyyy",DateAdd("d",-1,date)) ^& Right("0" ^& DatePart("m",DateAdd("d",-1,date)),2) ^& Right("0" ^& DatePart("d",DateAdd("d",-1,date)),2)>GetYesterdayDate.vbs
for /f "delims=" %%a in ('cscript /nologo GetYesterdayDate.vbs') do set Yesterday=%%a
del GetYesterdayDate.vbs

if not exist "%StrFolder%\%Yesterday%" (
    echo 没有昨天的数据,请按任意键退出
    pause>nul & exit
)
    
WinRAR a "%TarFolder%\%Yesterday%.rar" "%StrFolder%\%Yesterday%\*" -ep1 -r -rr -ibck

::如果要在备份后删除对应的文件夹,请把下面一行代码的开头双冒号删除
::rd /s /q "%StrFolder%\%Yesterday%"

echo 昨天的数据(%Yesterday%)已压缩备份,请按任意键退出
pause>nul & exit



以上代码中压缩功能使用的是WinRAR,如果您电脑没有相关软件,请安装,或自行修改其它的压缩工具,并使用其它工具的压缩命令。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式