就是下面这个代码,作用是检测文件夹内的文件大小,如果低过设定值就会把文件夹名字输出到txt文档。
现在的问题是有时候会报错,显示如图。请问是哪里出错了?
代码如下:- @echo off
- setlocal enabledelayedexpansion
- set "dir=%~dp0"
- set "max=5242880"
- ( for /d %%i in ("%dir%\*") do call :getFolderSize "%%i" )>"%~dp0dirList.txt"
- type "%~dp0dirList.txt"
- echo ----------------------
- echo out file: %~dp0dirList.txt
- echo ----------------------
- pause&exit
-
- :getFolderSize
- set "size=0"
- for /r "%~1" %%i in ("*") do ( set /a "size+=%%~zi" & if !size! gtr %max% goto :eof )
- echo %~nx1
复制代码
|