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

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

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


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

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


kiripanda,
Цитата:
Цитата: Во, так работает. enabledelayedexpansion вызывает проблему с именами содержащими символ ! Код: @Echo Off for %%e in (*.txt) do ( Set "file=%%~nxe" Call Set allfiles=%%allfiles%% "%%file:^%%=^^^%%%%" ) Call Echo programm.exe%%allfiles%% Pause и имена лучше брать в кавычки, потому что в них м.б. пробелы и др. спецсимволы, которых в batch'e туёва хуча
Полезное замечание. Правда в моем случае это не имеет никакого значения...
Но код меня заинтересовал. Зачем куча ^? Почему в конце четыре знака процента, да еще и без переменной...
Вообще не понятно, что это за разыменование такое хитрое? Для чего здесь используется Call?


El Sanchez ,
Цитата:
Zeneth, включение режима отложенного раскрытия переменных, когда символ % в имени переменной заменяется на !, имеющего меньший приоритет. Включение не позволяет переменной allfiles раскрываться при каждой итерации цикла, иначе переменная получит значение только последней итерации (имя последнего файла).
спасибо, стало понятно
По коду аналогичные вопросы

Ishka,
Цитата:
Почему никто не вспомнил про «shift»?
А что про шифт можно вспомнить? С удовольствием послушаю
Я про шифт знаю только то, что он сдвигает(необратимо) номера %0-%9 и делает их %1-%10 ну и так далее... или как-то так.. в общем я смутно помню уже

Отправлено: 23:21, 29-12-2011 | #12