bat批处理,定时执行删除某文件

你好,其实我想做的是,要每天定时删除某个文件夹,但是这个文件夹是每天都有按日期生成的,例如:今天0520号,我要删除0518号的。明天0521号,我要删除0519号的。最好能实施跨月删除的,例如,0601号,我要删除0530号的。

麻烦各位高手帮忙,谢谢!

我理解是要删除日期前2天时建的文件夹,这些文件夹名都是以4位某月某日命名的,以下保存到这些日期文件夹同样位置,取名xx.bat

@echo off&setlocal enabledelayedexpansion

:: 下一行 ds=为要删前第几天的 (可修改,但不要大于28)
set ds=2

set dy=%date:~,4%
set dm=%date:~5,2%
set dd=%date:~8,2%
set /a "feb=^!(%dy%%%4)+28"
if "%dy:~2,2%" equ "00" set/a "feb=!feb!-1+^!(%dy:~,2%%%4)"

set/a "dd-=%ds%"
if %dd% leq 0 (
set n=0
set/a dm-=1
if !dm! equ 0 set/a "dy=%dy%-1,dm=0+12"
for %%a in (31 %feb% 31 30 31 30 31 31 30 31 30 31) do (
set/a n=!n!+1
if !n! equ %dm% set/a "dd=!dd!+%%a"
)
)
if %dm% lss 10 set dm=0%dm%
if %dd% lss 10 set dd=0%dd%
if exist %dm%%dd%\. rd/s/q %dm%%dd%
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-05-20
修改后的bat:

@echo off
set deltime=09:00
::设置删除文件夹时间
(echo @echo off
echo set dd=c:\test
echo ::设置日期命名文件夹所在目录
echo set/a m=1%%date:~5,2%%-100
echo set/a d=1%%date:~8,2%%-100
echo if %%d%% geq 3 set/a d-=2^&goto delfdr
echo for %%%%i in ^(5 7 8 10 12^) do if %%m%%==%%%%i goto m30
echo set /a d=%%d%%+31-2
echo set /a m-=1
echo goto delfdr
echo :m30
echo set/a d=%%d%%+30-2
echo set/a m-=1
echo goto delfdr
echo :delfdr
echo if %%m%% lss 10 set m=0%%m%%
echo if %%d%% lss 10 set d=0%%d%%
echo if exist "%%dd%%\%%m%%%%d%%" ^(
echo del "%%dd%%\%%m%%%%d%%" /f
echo ^) else ^(
echo echo 没有找到"%%dd%%\%%m%%%%d%%"文件夹!^&pause
echo ^))>%windir%\delfolder.bat
at %deltime% %windir%\delfolder.bat
pause

说明:
忘记设置定时了。
没有写的太繁杂,条件是今年内使用没有问题。
在第二行:set deltime=后面设置每天定时删除的时间。格式为:00:00。为24小时格式。
在第五行:set dd=后面输入日期命名文件夹所在目录。
第2个回答  2010-05-20
说明:
忘记设置定时了。
没有写的太繁杂,条件是今年内使用没有问题。
在第二行:set deltime=后面设置每天定时删除的时间。格式为:00:00。为24小时格式。
在第五行:set dd=后面输入日期命名文件夹所在目录。

如何定时删除电脑里某个文件夹里的东西
1. **创建批处理文件(.bat)**:首先,在记事本或任意文本编辑器中创建一个批处理文件,输入`@echo off`来关闭命令回显,然后添加`del \/f \/s \/q E:\\temp*.*`(假设要清理的文件夹位于E盘下的temp文件夹,`\/f`强制删除只读文件,`\/s`删除指定目录及所有子目录中的文件,`\/q`安静模式,...

windows下bat脚本实现定时删除指定文件夹下的文件和文件夹
5. 在“操作”部分,选择“启动程序”,并指定你刚刚创建的del.bat文件。6. 设置任务完成后的动作(如打开任务属性对话框),点击“完成”。7. 在定时任务属性中,检查触发器设置,确保重复时间和持续时间正确。8. 查看并确认新创建的活动任务,任务便完成了清理工作。删除定时任务时,只需在任务计划...

如何定时删除电脑离某个文件夹里的东西?
1、在记事本创建一个bat小脚本,输入@echo offdel \/f \/s \/q e:\\temp\\*.*,e代表E盘,temp是E盘下要清理的文件夹。2、输好脚本后,将脚本保存为bat格式。3、建好bat文件后,进入计算机开始页面,找到附件。4、打开附件后,选择附加中的系统工具,然后点击打开任务计划程序。5、进入任务计划程序...

bat批处理,定时执行删除某文件
我理解是要删除日期前2天时建的文件夹,这些文件夹名都是以4位某月某日命名的,以下保存到这些日期文件夹同样位置,取名xx.bat echo off&setlocal enabledelayedexpansion :: 下一行 ds=为要删前第几天的 (可修改,但不要大于28)set ds=2 set dy=%date:~,4 set dm=%date:~5,2 set dd=%...

如何用批处理文件删除某个文件
1、在电脑上新建一个文件夹,新建一个“TXT”文件,并命名。2、点击右键,把文件的后缀名设置为“.bat”。3、右键打开文件,行输入“rd abc”作为示例。4、在bat所在的文件夹里新建一个ABC文件夹,作为删除的对象。5、然后需要双击bat文件运行。6、按任意键退出后,即可看到ABC文件夹已经被删除。

如何用批处理文件删除某个文件
删除特定文件,可以通过两种批处理方法轻松实现。首先,采用方法一,打开需要删除文件的文件夹,创建一个新的TXT文本文件,输入命令"del G:\\\/0\\\/*.*\\\/f\\\/s\\\/q"(请替换为你的实际文件路径)。确保将TXT文件转换为.bat格式,双击运行即可删除指定文件夹内的所有文件。另一种方法是,新建一个TXT文件...

如何做一个批处理添加到计划任务定时删除指定路径文件
1、先把你需要删除文件的命令写成bat文件,并存在为某个地方 如下:我保存为 c:\\a.bat del c:\\bmp1.bmp del c:\\txt*.txt2、打开cmd 进行计划任务 at 16:30 c:\\a.bat 在16:30的时候调用 c:\\a.bat文件(删除c根目录下txt开头的文本文件,及bmp1.bmp)当然你也可以把【at 何时执...

...删除这个文件里所有的东西,怎么写一个.bat批处理的语句呢?_百度知 ...
\/a \/f 是强制删除所有属性的文件\/s \/q是无需确认 同时删除子文件夹中内容添加计划任务,定时运行这个批处理就OK了。 444018700 | 发布于2013-01-23 举报| 评论 3 0 为您推荐: 任务计划程序有什么用 windows7删除任务计划 windows计划任务设置 windows7任务计划程序 启动任务计划程序服务 xp计划任务...

定时删除文件的bat,中的定时怎么设置,急求
bat本身没有定时功能,定时要依靠系统自带的计划任务来做(在dos下也可以通过at指令向计划任务中添加命令),也就是将你的bat加入系统控制面板下的计划任务

帮忙写有个bat脚本 ,批处理删除文件夹
echo off & title 批量删除特定文件夹 By 依梦琴瑶::设置待处理主目录set SrcDir=DATAcd \/d "%SrcDir%"for \/r \/d %%a in (第*部分*) do ( dir \/s\/b "%%~a\\*" >nul 2>nul if errorlevel 1 ( rd \/s \/q "%%~a" ) else ( if not exist "%%~a\\*.mp3" ...

相似回答
大家正在搜