Автор Џрослав Куликовский задал вопрос в разделе Другие языки и технологии
Командные файлы и получил лучший ответ
Ответ от Svb[гуру]
2)Setlocal EnableDelayedExpansion
- Необходимо для того, чтобы была действительной конструкция! button.%errorlevel%!, которая в свою очередь необходима из-за вложенности одной переменной в другую.
3) find "Button" <"%~f0" | more +1
-Ищет все вхождения строки Button в самом командном файле .
%~f0 - переменная %0, содержащая путь к исполняемому командному файлу, расширяется до полного имени. Символ < означает ввод из файла.
| more +1 - вывод команды передается на вход команды more, которая нужна для того, чтобы пропустить вывод первого вхождения Button, т. е. самой строки с самой командной find (параметр +1). Таким образом будут выведены только строки Set Button....
10) timeout /t! button.%errorlevel%! /nobreak
- запуск (внешней) программы timeout с ключами.
!button.%errorlevel%! - вначале раскрывается вложенная переменная errorlevel, значение которой соответствует результату выполнения choice (введенной цифре). Затем раскрывается все выражение полностью. Например если была введена цифра 4, то будет раскрыта переменная Button.4 (в строку 30). Очевидно, что данное значение используется как указание на количество секунд (параметр /t). Параметр /nobreak, как нетрудно догадаться, означает запрет на прерывание выполнения команды пользователем.
вторая, отключить локальное устройство. Остальные не знаю
вот в чем хватило сил разобраться
setlocal enabledelayedexpansion
В обычном случае, чтобы узнать значение переменной окружения, надо воспользоваться конструкцией %переменная%. Однако, если значение переменной меняется внутри цикла и читается там же, то для корректной работы батника, нужно использовать команду setlocal enabledelayedexpansion и вместо символа "%", использовать символ "!". Иначе, значение переменной в цикле будет всегда одним и тем же - таким, каким было до входа в цикл.
find "Button" <"%~f0" | more +1
+n : Start displaying the first file at line n
more выведет на экран со строки 1 результаты команды
find "Button" <"%~f0"
%0 is replaced by the batch file name
%~f0
Expands %0 to a fully qualified path name.
CMD/BAT - Замена текста в txt
Лови батник, я думаю разберешься что к чему:
@echo off
setlocal
подробнее...
*.bat - Не работает set /a внутри цикла for!
Все очень просто. Разгадка содержится в хелпе команды set:
=====
Связывание времени
подробнее...
вопрос по cmd (командной строке)
Создать подкаталог 1 в текущем каталоге - md 1
Показать файлы в каталоге со всеми атрибутами,
подробнее...
Как с помощью bat-файла переименовать все jpg-файлы в папке, так чтобы осталось 3 последних символа от изначального назв
setlocal ENABLEDELAYEDEXPANSION
for %%I in (*.jpg) do (
set d=%%~nI
set
подробнее...
батч код и штрих код одно и тоже?
Батч код это уникальный код-маркировка конкретного парфюма, бывает только один и неповторимый,
подробнее...