Страницы: 1 .. 9 10 11 12 13 .. 282
Call
Вызов одного пакетного файла из другого без завершения выполнения первого файла. Команда call принимает метки в качестве объекта вызова. Используемая в командной строке, а не в сценарии или пакетном файле, команда Call игнорируется.
Синтаксис
call [[диск:][путь] имя_файла [пакетные_параметры]] [:метка [аргументы]]
Параметры
- [диск:][путь] имя_файла
- Задает имя и местоположение пакетного файла для запуска. Параметр имя_файла должен иметь расширение .bat или .cmd.
- пакетные_параметры
- Задает данные командной строки, используемые программой пакетной обработки, включая параметры командной строки, имена файлов, пакетные параметры (в диапазоне от %0 до %9) или переменные (например %baud%).
- :метка
- Указывает метку, на которую должно быть передано управление программы пакетной обработки. При использовании команды call с этим параметром создается новый контекст пакетного файла, а управление передается инструкции, следующей за указанной меткой. Когда первый раз встречается конец пакетного файла (после перехода на метку), управление возвращается на инструкцию, следующую за инструкцией call. При втором достижении конца файла выполнение пакетной программы прекращается.
- аргументы
- Задает данные командной строки, которые передаются в новый экземпляр программы пакетной обработки, начинающейся с :метки, включая параметры командной строки, имена файлов, пакетные параметры (в диапазоне от %1 до %9) или переменные (например %baud%).
- /?
- Отображение справки в командной строке.
Заметки
-
Использование пакетных параметров
Пакетные параметры могут содержать любые сведения, которые допускается передавать в программы пакетной обработки, включая параметры командной строки, имена файлов, пакетные параметры (в диапазоне от %0 до %9) или переменные (например %baud%).
-
Использование каналов и символов перенаправления
Каналы и символы перенаправления не допускается использовать с командой call.
-
Рекурсивный вызов пакетных файлов
Создание пакетных файлов, которые вызывают сами себя, допускается, однако в этом случае необходимо задать условия выхода. В противном случае родительская и дочерняя программы будут вызывать друг друга в бесконечном цикле.
-
Работа с расширениями командного процессора
Если расширения командного процессора разрешены (задано по умолчанию), команда call принимает метки в качестве объекта вызова. Правильный синтаксис:
call :аргументы метки
Примеры
Для вызова программы Checknew.bat из другого пакетного файла в тексте родительского пакетного файла введите следующую строку:
call checknew
Если родительская пакетная программа принимает два пакетных параметра и требуется передать их в файл Checknew.bat, включите следующую команду в родительскую пакетную программу:
call checknew %1 %2
1 .. 9 10 11 12 13 .. 282