从批处理文件在新窗口中启动进程

时间:2011-06-10 12:34:20

标签: windows batch-file

我在Windows中编写了一个批处理文件(.bat)。我想在新窗口中执行特定的过程。我该怎么做?

实施例

a.py -s 3 -l 5
b.py -k 0  -> I want to start this in a new window and let the original batch file continue 
C:\program.exe
...
....

4 个答案:

答案 0 :(得分:31)

使用开始命令:

start foo.py

start "" "c:\path with spaces\foo.py"

答案 1 :(得分:7)

  

启动“title”“C:\ path \ to \ file.exe”

我强烈建议您插入标题,以便以后可以通过TASKKILL命令调用该标题。

  

TASKKILL / im title

答案 2 :(得分:0)

根据要求,我们可以这样跟进。因为我正在为办公室目的进行自动化工作。所以我需要创建一个特定时间的过程,&之后我必须杀死服务/流程。 那我做了什么, 开始一个过程:

**`start "API" C:\Python27\python.exe`**

然后我尝试了我的所有其他作品&任务。之后我需要杀死那个过程。所以我做了,

**`taskkill /F /IM python.exe`**

在杀死过程后,结果顺利进行。

答案 3 :(得分:0)

以下解决方案用于在同一窗口中调用多个文件;这个问题已经回答了,所以我只是加了2美分。

如果您正在使用调用多个其他批处理文件的主批处理文件,则可以使用"调用"命令。但是,这些都不是。

在其他批处理文件中,您可以调用" start"命令在单独的窗口中启动它们。

master.bat

call myCoolBatchFile1.bat
call myCoolBatchFile2.bat
call myCoolBatchFile3.bat

如果您使用的是Windows Powershell,则可以使用Start-Process命令。

myPowershell.ps1:

#silent install java from java exe. 
$javaLogLocation = "[my log path here]"
$javaFileName = "[javaInstaller file name here].exe"
$process = "$javaFileName"
$args = "/lang=1033 /s /L $javaLogLocation"
Start-Process $process -ArgumentList $args -Wait

有关start命令及其用法的更多信息,以及其他脚本技术: https://ss64.com/nt/start.html