Запускать несколько файлов bat внутри bat и передавать аргументы - PullRequest
2 голосов
/ 23 февраля 2011

Моя проблема связана с передачей аргументов файлам bat. Первый аргумент передается корректно в bat, но во второй раз аргумент передается как emtpy.

Пример:

set comport = com4
call bat1.bat %comport%       ->comport is com4
if errorlevel 1 goto end
call bat2.bat %comport%       ->comport is empty

поэтому после первого вызова bat1.bat comport пуст. Как сделать так, чтобы аргумент вызова на "основном" уровне летучей мыши оставался в памяти после вызова bat1.bat?

1 Ответ

2 голосов
/ 24 февраля 2011
@echo off
set comport=com4
setlocal&(call bat1.bat %comport%)&endlocal
if errorlevel 1 goto end
call bat2.bat %comport%
:end

setlocal работает только на WinNT4 +, а не на DOS или Win9x, если вам нужно поддерживать их, вам нужно сохранить% comport% в другой переменной перед вызовом bat1.bat, а затем восстановить значение

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...