2011-09-30 51 views
1

我有一组DOS命令,需要在不同的shell实例中运行。是否有一个可以写入的单个批处理文件,可以设置多个cmd实例并在每个提示中执行一组DOS命令?从单个批处理文件启动多个shell提示

+0

“start cmd”从当前的一个打开一个新的DOS实例... – blad

+0

试过这个,但没有工作......也许,我的问题并不清楚。即时尝试在第一个命令提示符下执行命令,然后打开第二个,然后在第二个提示中执行另一组命令 – rs79

+0

我的问题是,每个shell都启动服务器实例 - 所以提示不可用发出开始cmd – rs79

回答

3

你的问题似乎归结为如何运行一个不同的系列中的cmd.exe的每个实例的命令,而无需多个命令文件。

有一个相当简单的方法来做到这一点。这个想法是在cmd.exe的每个实例中运行相同的命令文件,但传递给它一个命令行参数,告诉它该做哪个部分的工作。

这里的一个有用的技巧是使用命令行参数在一个goto命令,就像这样:

if not "%1" == "" goto :%1 

start "Job 1" "%~dpfx0" job1 
start "Job 2" "%~dpfx0" job2 
goto :eof 

:job1 

echo Job 1 
pause 
exit 

:job2 

echo Job 2 
pause 
exit 

还要注意使用%〜dpfx0来确定当前脚本的完整路径和名称。如果路径包含空格,则必须使用引号,这意味着(由于启动命令的语法奇怪),需要首先明确指定窗口标题(也用引号引起来)。

1

如何像:

启动CMD/C目录C:\ WINDOWS

相关问题