Перенаправление выходного файла в пакетном режиме

Я пытаюсь создать пакетный файл, чтобы пройти через папку и вывести все размеры файлов каждого файла в указанной папке в.txt

Пока у меня есть следующее:

@echo off
setlocal
set size=
FOR /R (F:\mediav3) %%A IN (*) DO set size=%%~zA

У меня проблемы с фактическим выходом. Я пытался использовать эхо%size% > temp.txt и несколько других вариантов. На основе других выходных перенаправляет сообщения, которые я нашел здесь, но не смог найти рабочее решение. Любая помощь будет принята с благодарностью.

2 ответа

Это работает

@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. Вероятно, есть более чистый способ сделать это, но это, безусловно, сработало.

Другие вопросы по тегам