Для фильтрации по данному дню 2018-03-05
используйте
FOR /F "tokens=* delims=" %%A in ('dir /b /s *.7z') do (
Echo Processing %%A >> listing.txt
7z.exe l "%%A" |Findstr "^2018-03-05" >> listing.txt
)
-r
предназначен не для перечисления, а для добавления / обновления повторяющихся папок в источнике
Редактировать здесь версия с указанными From/Until
датами:
:: Q:\Test\2018\05\24\SO_50515876.cmd
@Echo off
Set "Date-From=2018-03-01"
Set "DateUntil=2018-03-30"
FOR /F "tokens=* delims=" %%A in ('dir /b /s *.7z') do (
Echo Processing %%A >> listing.txt
For /f "tokens=1*" %%B in (
'7z.exe l "%%A" ^|Findstr "^[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]"'
) Do (Echo %%B
If %%B geq %Date-From% If %%B leq %DateUntil% Echo=%%B %%C >>listing.txt
)
)
Пример вывода:
> type listing.txt
Processing C:\test\test.7z
2018-03-29 15:37:15 D.... 0 0 subdir0
2018-03-29 15:37:15 D.... 0 0 subdir1
2018-03-29 15:41:55 D.... 0 0 subdir2
2018-03-29 15:37:15 D.... 0 0 subdir3
2018-03-29 17:45:42 ....A 355 SelectedFolders.zip
2018-03-29 15:38:19 ....A 27 subdir.csv
2018-03-29 15:41:34 ....A 25 subdir2\20180329154134,19.txt
2018-03-29 15:42:05 ....A 25 subdir4\20180329154205,27.txt
2018-03-29 15:42:11 ....A 25 subdir4\20180329154211,87.txt