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 - 返回文件上一次修改的時間。