如何用批處理刪除指定大小的文件?
01-08
如何用批處理刪除某個文件夾目錄(該文件夾多層嵌套子文件夾)下所有大於 1000kb 的任何拓展名的所有文件,保留 1000kb 以下的文件?
比如這個文件夾是 E 盤根目錄名字叫做 xy 的文件夾。
此題終結,用:for /r E:xy %%i in (*) do @(if %%~zi gtr 1024000 del "%%i" /f) 搞定
PS:EQU 等於; NEQ 不等於; LSS 小於; LEQ 小於等於; GTR 大於; GEQ 大於等於感謝王廷虎的回答與舉一反三的解釋。
在Linux系統下使用1行代碼即可搞定。
find . -type f -size +1000k -exec rm -vf {} ;
在Windows系統下使用1行代碼即可搞定(PowerShell)。
ls -r|where {$_.Length -gt 1000*1024}|%{rm $_.FullName}
對執行結果不確定的話可以對rm(Remove-Item)命令使用-whatif參數在不實際執行的情況下查看命令的後果:
ls -r|where {$_.Length -gt 1000*1024}|%{rm $_.FullName -whatif}
在windows系統下使用一行代碼即可搞定(純批處理)
for /r YOURDIR %i in (*) do @(if %~zi gtr 1024000 del %i /f)
推薦閱讀: