rem 刪除當(dāng)前目錄下及其子目錄中的空文件夾
for /f "tokens=*" %a in ('dir /b /ad /s E:\FileCache^|sort /r') do rd "%a" /q 2>nul
在批處理中把%改成%%
for /f "tokens=*" %%a in ('dir /b /ad /s E:\FileCache^|sort /r') do rd "%%a" /q 2>nul
Forfiles
windows server 2003內(nèi)置命令
開關(guān)很少,p路徑,m 方式,s包含子目錄,c執(zhí)行命令,d日期
普通使用可能比不上for,dir等, 但是c這個(gè)開關(guān)很強(qiáng)大的
command string:
@file - returns the name of the file.
@fname - returns the file name without extension.
@ext - returns only the extension of the file.
@path - returns the full path of the file.
@relpath - returns the relative path of the file.
@isdir - returns "TRUE" if a file type is a directory, and "FALSE" for files.
@fsize - returns the size of the file in bytes.
@fdate - returns the last modified date of the file.
@ftime - returns the last modified time of the file.
FORFILES /P C:\WINDOWS /S /M DNS*.*
列出windows及其子目錄下DNS開頭的所有文件
FORFILES /S /M *.txt /C "cmd /c type @file | more"
列出當(dāng)前目錄以及子目錄下所有的txt文檔的內(nèi)容,并以分頁(yè)的形式打印出來
FORFILES /P C:\ /S /M *.bat
列出windows及其子目錄下的bat文件
FORFILES /D -30 /M *.exe /C "cmd /c echo @path 0x09 was changed 30 days ago"
列出30天內(nèi)修 改過的exe文件,列出路徑+自定義文字0x09(tab) was changed 30 days ago
FORFILES /D 2001/01/01 /C "cmd /c echo @fname is new since Jan 1st 2001"
列出 2001、0101后的文件并打印文檔名字+is new since Jan 1st 2001
FORFILES /D +2009/4/10 /C "cmd /c echo @fname is new today"
列出20090410后修改過的文 件,并打印
FORFILES /M *.exe /D -1
列出一天前到現(xiàn)在修改過的exe文件
FORFILES /S /M *.doc /C "cmd /c echo @fsize"
列出doc文件,并打印出文件大小
FORFILES /M *.txt /C "cmd /c if @isdir==FALSE notepad.exe @file"
聯(lián)系客服