YuS_2
Silver Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Alex_Piggy Цитата: FOR не дружит с GOTO. Придетя через call. | Через call, оно красивее и правильнее, но и goto внутри цикла, вроде бы, тоже работает... во всяком случае этот код: Код: @echo off If not exist Screenshot???.jpg Goto NoScreenshots If not exist Screenshots\ Md Screenshots rem pause Set Num=0 SetLocal EnableExtensions EnableDelayedExpansion For /f %%A in ('Dir /b Screenshot???.jpg') do If not exist Screenshots\%%A ( Move %%A Screenshots >NUL ) else ( :Next Set /a Num+=1 Set StrNum=!Num! echo Num=!Num! echo StrNum=!StrNum! If "!StrNum:~2,1!"=="" Set StrNum=0!StrNum! echo StrNum=!StrNum! If "!StrNum:~2,1!"=="" Set StrNum=0!StrNum! echo StrNum=!StrNum! echo %%A If exist Screenshots\Screenshot!StrNum!.jpg Goto Next Move %%A Screenshots\Screenshot!StrNum!.jpg >NUL ) rem SetLocal DisableDelayedExpansion :NoScreenshots | Код: Num=1 StrNum=1 StrNum=01 StrNum=001 Screenshot001.jpg Num=2 StrNum=2 StrNum=02 StrNum=002 %A Num=3 StrNum=3 StrNum=03 StrNum=003 %A Num=4 StrNum=4 StrNum=04 StrNum=004 %A Не удается найти указанный файл. | - вполне. Правда, сам алгоритм не совсем удачный, но вопрос-то был не в этом... | Всего записей: 3218 | Зарегистр. 03-02-2009 | Отправлено: 18:04 29-09-2015 | Исправлено: YuS_2, 18:07 29-09-2015 |
|