shmel_sv@vk |
01-08-2016 15:35 2655944 |
вывод списка папок где не равное количество фалов
хочу сделать батник, который будет проверять папки на наличие файлов с расширением 1 и расширением 2 (вывод списка папок где не равное количество фалов)
но чтото делаю не то
где я допустил ошибку?
Цитата:
@echo on
echo. PROCESSING %CD%
echo. CHECKING rar
set ext1=rar
set ext2=txt
for /f "tokens=*" %%D in (' dir /b /ad "%CD%" ') do if exist "%%D\*.%ext1%" (
For /F %%A In ('2^>Nul Dir /B/A-D %%D\*.%ext2%^|Find /C /V ""') do set aaa=%%a
For /F %%B In ('2^>Nul Dir /B/A-D %%D\*.%ext1%^|Find /C /V ""') do set bbb=%%b
if %aaa% NEQ %bbb% Echo %%D>>list.txt
)
exit
|
|
Цитата:
Цитата shmel_sv@vk
вывод списка папок где не равное количество фалов »
|
подробнее, не равное чему
в папке кол-во txt не равно кол-ву rar
или в одной папке 2 txt в другой 3 rar
или в одной 2 txt и 2 rar а в другой 3 txt 2 rar
еще есть варианты...
|
shmel_sv@vk |
01-08-2016 18:35 2655975 |
список файлов в одной и той же папке кол-во txt не равно кол-ву rar
|
shmel_sv@vk |
02-08-2016 01:04 2656029 |
фух. разобралс\ вроди бы
Цитата:
@echo off
echo. PROCESSING %CD%
echo. CHECKING cue
set ext1=rar
set ext2=txt
for /f "tokens=*" %%D in (' dir /b /ad "%CD%" ') do if exist "%%D\*.%ext1%" (
For /F %%A In ('2^>Nul Dir /B/A-D %%D\*.%ext1%^|Find /C /V ""') do (
For /F %%B In ('2^>Nul Dir /B/A-D %%D\*.%ext2%^|Find /C /V ""') do (
if %%A NEQ %%B Echo %%D\>>temp.txt
)))
exit
|
|
Вот ваш, но рабочий вариант:
Код:
@echo off
set "d=papka"
for /f "delims=" %%a in ('dir/ad/b "%d%"') do (
for /f "delims=" %%b in ('dir/a-d/b "%d%\%%a"^|find/c ".txt"') do (
for /f "delims=" %%c in ('dir/a-d/b "%d%\%%a"^|find/c ".rar"') do set/a x=%%b/%%c& cmd/v/c if not !x!==1 echo %%a
))
exit
это еще один вариант:
Код:
@echo off
set "d=papka"
set "a=.txt"& set "b=.rar"
for /f "delims=" %%A in ('dir/ad/b "%d%"') do (
pushd "%d%\%%A"
setlocal enabledelayedexpansion
for %%a in (*) do set/a %%~xa+=1
set .& set/a x=%a%/%b%
>>"%Userprofile%\Desktop\list.txt" (if not !x!==1 echo %d%\%%A)
endlocal
popd
)
exit
.
|
Время: 22:01.
© OSzone.net 2001-