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
时间: 2024-11-11 22:14:38