Goto
В пакетной программе передает управление Windows XP в строку, определенную меткой. Когда метка найдена, выполнение продолжается со следующей за ней строки.
Синтаксис
goto метка
Параметры
- метка
- Строка в пакетной программе, к которой выполняется переход.
- /?
- Отображение справки в командной строке.
Заметки
- Работа с расширениями команды
Если расширения команды включены (по умолчанию они включены) и в команде goto используется метка :EOF, управление будет передано в конец файла текущего пакетного сценария для выхода из него без назначения метки. Когда используется команда goto с меткой :EOF, перед меткой должно быть вставлено двоеточие. Пример:
goto :EOF
Описание расширений команды call, включающих эту возможность, смотрите в разделе cmd.
- Использование допустимых значений метки
Метка может включать пробелы, но не может включать другие разделители, такие как точка с запятой или знак равенства. В команде goto используются только первые восемь знаков метки. Например, следующие метки эквивалентны и рассматриваются как :hithere0:
:hithere0
:hithere01
:hithere02
- Совпадение меток в пакетных программах
Метка, заданная в команде, должна соответствовать метке в тексте пакетной программы. Метка в пакетной программе должна начинаться с двоеточия (:). В Windows XP строка пакетной программы, начинающаяся с двоеточия (:), опознается как метка и не обрабатывается как команда. Если строка начинается с двоеточия, все присутствующие в ней команды обработаны не будут. Если в пакетном файле не содержится заданной метки, программа будет остановлена, а на экран будет выведено следующее сообщение:
Метка не найдена.
- Использование команды goto для обработки условий
Команду goto можно использовать совместно с другими командами для выполнения операций с условиями. Чтобы получить дополнительные сведения об использовании команды goto для обработки условий, выберите раздел if.
Примеры
Следующая пакетная программа форматирует диск в дисководе A как системный диск. Если форматирование прошло успешно, команда goto передает управление Windows XP на метку :end.
echo off
format a: /s
if not errorlevel 1 goto end
echo Ошибка при форматировании.
:end
?echo конец пакетной программы.
Для вопросов, обсуждений, замечаний, предложений и т. п. можете использовать раздел форума этого сайта (требуется регистрация).
Новый раздел о средствах командной строки в рамках этого же проекта расположен здесь