Как продолжение моего комментария, вам нужно было включить ваши if
команды в часть do
для l oop.
Пример по запросу:
@Echo Off
MD GoodFolder 2>NUL
MD BadFolder 2>NUL
For /D %%I In (*.tag) Do (
If Exist "%%I\SubFolderA\" (
Move "%%I" "GoodFolder"
) Else Move "%%I" "BadFolder"
)
Pause
Exit /B
Вы заметите, что я не включил установку переменной без необходимости. Если бы вам нужно было сделать это для какой-то другой цели, вам пришлось бы отложить расширение этой переменной, чтобы эффективно использовать ее.
Пример:
@Echo Off
MD GoodFolder 2>NUL
MD BadFolder 2>NUL
For /D %%I In (*.tag) Do (
Set "check=%%I"
SetLocal EnableDelayedExpansion
If Exist "!check!\SubFolderA\" (
Move "!check!" "GoodFolder"
) Else Move "!check!" "BadFolder"
EndLocal
)
Pause
Exit /B