bat脚本
常常遇到windows服务器的某目录需要定时删除的情况,可以采用.bat脚本加定时任务的方式解决
forfiles /p <目标目录名> /d <天数> /c <执行的命令>
/p 指定了要在哪个目录里查找文件,默认是当前工作目录。
/d 指定一个日期或天数,用于比较文件的最后修改日期是否符合条件。
/c 对每个找到的文件执行的命令。
举例
-
删除I:\QQLive目录下的扩展名为dll文件(以当前系统时间为基准)
forfiles /p "I:\QQLive" /m *.dll /c "cmd /c del @file /f"
@PATH : 表示文件的完整的路径。
@File : 表示文件名称。 -
删除I:\QQLive目录7天前的所有文件(以当前系统时间为基准)
forfiles /p "I:\QQLive" /m . /d -7 /c "cmd /c del @file /f" - 递归删除I:\qycache目录下的所有文件
forfiles /p "I:\qycache" /m . /s /c "cmd /c del @file /f"
自定义删除的时间和路径
@echo off
set /p dt=请输入日期:
set /p pth=请输入路径:
forfiles /p "%pth%" /m . /c "cmd /c del /a /f @path" /d -%dt%
for /f "delims=" %%a in ('dir /a-d /b /s "%pth%"^|sort /r') do (
rd "%%a"
)
pause
转载于:https://blog.51cto.com/zhouyaxiong/2360107