Единственный способ, о котором я могу думать, - это когда вы используете некоторые параметры командной строки для своего собственного пакетного файла и добавляете некоторые метки перехода, где вы хотите, чтобы ваш код разделения был.
Пример «myfile.bat»:
@echo off
set thisfile=%~0
echo Unquoted Param1=%~1
if "%~1" == "jump1" goto jump1
if "%~1" == "jump2" goto jump2
if "%~1" == "jump3" goto jump3
start "Title1" "%thisfile%" "jump1"
start "Title2" "%thisfile%" "jump2"
start "Title3" "%thisfile%" "jump3"
:jump1
echo First new console window executes this
pause
goto eof
:jump2
echo Second new console window executes this
pause
goto eof
:jump3
echo Third new console window executes this
pause
goto eof
:eof
Возможно, вам нужно немного поиграть с командой start
. См. start /?
для синтаксиса и особенно для параметра /D
, который устанавливает каталог для выполнения команды. Если необходимо, разделите путь и имя файла с %~dp0
только для диска и пути и %~nx0
для имени файла с расширением только.
Если вы не хотите заголовок, вы можете указать ""
still или start
может интерпретировать путь к myfile.bat
как заголовок и завершится с сообщением об ошибке, потому что синтаксис не совпадает .
Если я ошибся, и три терминала просто должны выполнить один и тот же код, который вы хотели бы видеть только в своем файле, чем просто удалить разделы "jump2" и "jump3" и вызвать каждый терминал с помощью "jump1" "параметр (который вы можете переименовать, конечно).
GL, HF:)