Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Iska:
Если не разберётесь — спрашивайте. »
Добрый день, Iska! Извиняюсь, что спрашиваю уже спустя столько времени, но все же поясните пожалуйста как выполняется работа в этом коде. Мне бы буквально разобрать весь ход выполнения процесса в цикле. Можно даже на примере блок-схемы.
Цитата Iska:
if defined sSourceFolder (
for %%i in ("%sSourceFolder%\*.*") do set sFoundExt%%~xi=%%~xi »
Вот первый цикл. Объясните пожалуйста по шагам. Если я правильно понимаю, то если у нас существует папка, которую мы указываем через командную строку, то для всех файлов, находящихся в этой директории вводится новая переменная sFoundExt, которая... А вот что которая не понятно. Не могу разобраться что именно значит вот эта запись "sFoundExt%%~xi=%%~xi". Что за значение после равно? То что %~xi заменяет расширением имя файла %i понятно, но как это реализуется в данной строке? Почему написано через равно и почему %%, а не просто %?
Конечно, мои вопросы в некотором плане примитивны, но все же, если Вас не особо затруднит подробно рассказать о назначении и синтаксисе каждой переменной, буду очень благодарен.
Еще никак не могу разобраться с токенами. В нете почитал, но все же никак не пойму. Второй токен это значит, что в нашем случае будет выводиться %%~xi, так как находится после знака разделителя? Или что это значит?
Заранее большое спасибо Вам за ответ!

Последний раз редактировалось Flyer61rus, 05-06-2016 в 17:39.


Отправлено: 14:53, 05-06-2016 | #10