您的位置:首页 > 其它

删除指定创建日期前的文件夹、文件

2017-08-09 10:11 239 查看
forfiles 命令

例:forfiles /p "c:\test" /s /m *.log /d -30 /c "cmd /c del @path /q /f"
删除 c:\test及子目录下 所有log扩展名 修改时间在30天以前的文件

例:删除 c:\test及子目录下 所有log扩展名 修改时间在30天以前的文件

set SrcDir=E:\software
set DaysAgo=7
forfiles /p %SrcDir% /s /d -%DaysAgo% /c "cmd /c del /f /q /a @path && rd /s /q @path"

例:逻辑盘空间不足10G

@echo off
set vol=E
for /f "tokens=2* delims=:" %%a in ('fsutil volume diskfree %vol%:') do set free=%%a
set free=%free:~0,-6%
echo %free%
if %free% lss 10000 echo 这个逻辑盘空间不足10G

@path是forfiles命令中/c 参数变量

默认命令是 "cmd /c echo @file"。下列变量
可以用在命令字符串中:
@file    - 返回文件名。
@fname   - 返回不带扩展名的文件名。
@ext     - 只返回文件的扩展。
@path    - 返回文件的完整路径。
@relpath - 返回文件的相对路径。
@isdir   - 如果文件类型是目录,返回 "TRUE";如果是文件,返回 "FALSE"。
@fsize   - 以字节为单位返回文件大小。
@fdate   - 返回文件上一次修改的日期。
@ftime   - 返回文件上一次修改的时间。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐