我正在尝试创建一个批处理文件以遍历文件夹并将指定文件夹中每个文件的所有文件大小输出到 .txt
到目前为止,我有以下内容:
@echo off
setlocal
set size=
FOR /R (F:\mediav3) %%A IN (*) DO set size=%%~zA
我对实际输出有疑问。我尝试过使用 echo%size% > temp.txt
和其他一些变体。基于我在这里找到的其他输出重定向帖子,但还没有设法提出一个可行的解决方案。任何帮助将不胜感激。
我正在尝试创建一个批处理文件以遍历文件夹并将指定文件夹中每个文件的所有文件大小输出到 .txt
到目前为止,我有以下内容:
@echo off
setlocal
set size=
FOR /R (F:\mediav3) %%A IN (*) DO set size=%%~zA
我对实际输出有疑问。我尝试过使用 echo%size% > temp.txt
和其他一些变体。基于我在这里找到的其他输出重定向帖子,但还没有设法提出一个可行的解决方案。任何帮助将不胜感激。
这有效
@echo off
setlocal enabledelayedexpansion
for /r F:\mediav3 %%a in (*) do (
set size=%%~za
echo !size! >>C:\sizes.txt
)
对于任何感兴趣的人,我的最终批处理文件如下:
@echo off
setlocal
echo ^<fileinfo^>
FOR /R F:\MEDIAV3 %%A IN (*) DO echo ^<filename^>%%~fA^</filename^>>>fileinfo.xml & echo ^<bytes^>%%~zA^</bytes^>>>fileinfo.xml & echo.>>fileinfo.xml
echo ^</fileinfo^>>>fileinfo.xml
批处理输出经过格式化,可以轻松地将文件名和文件大小转换为 xml 列表。可能有一种更清洁的方法,但这确实有效。