如何通过批处理文件执行 cmd 命令?

我想编写一个批处理文件,它将按照给定的顺序执行以下操作:

  1. 打开 cmd
  2. 运行 cmd 命令 cd c:\Program files\IIS Express
  3. 运行 cmd 命令 iisexpress /path:"C:\FormsAdmin.Site" /port:8088 /clr:v2.0
  4. 用 URL = http://localhost:8088/default.aspx打开 Internet Explorer 8

注意: 在执行命令之后,cmd 窗口不应该关闭。

我试过 启动 cmd.exe/k“ cd & cd ProgramFiles IIS Express”,但它不能解决我的问题。

808532 次浏览

因此,创建一个实际的批处理文件: 打开记事本,键入要运行的命令,然后保存为 .bat文件。然后双击。运行它的 bat 文件。

首先尝试一下这样的方法:

c:\
cd c:\Program files\IIS Express
start iisexpress /path:"C:\FormsAdmin.Site" /port:8088 /clr:v2.0
start http://localhost:8088/default.aspx
pause

我认为正确的语法是:

cmd /k "cd c:\<folder name>"

这修复了 大胡子的回答的一些问题(但是未经测试) :

@echo off
cd /d "c:\Program files\IIS Express"
start "" iisexpress /path:"C:\FormsAdmin.Site" /port:8088 /clr:v2.0
timeout 10
start http://localhost:8088/default.aspx
pause
@echo off
title Command Executer
color 1b


echo Command Executer by: YourNameHere
echo #################################
: execute
echo Please Type A Command Here:
set /p cmd=Command:
%cmd%
goto execute

我知道 DOS 和 cmd 提示符不喜欢文件夹名中的空格

程序文件 IISExpress

它试图转到 c: Program 而不是 C: “ Program Files”

更改文件夹名称和 * . exe 名称。希望这有所帮助

Cmd/c“ command”语法运行良好。另外,如果希望在路径中包含一个包含空格的可执行文件,则需要两组引号。

cmd /c ""path to executable""

如果您的可执行文件需要一个文件输入,在路径中有一个空格,那么就需要另一个集合

cmd /c ""path to executable" -f "path to file""

Cmd/k cd c: 就是正确答案

start cmd /k "your cmd command1"
start cmd /k "your cmd command2"

It works in Windows server2012 while I use these command in one batch file.

I was trying to run a couple of batch files parallely at startup, if a condition was true.

为此,我创建了一个父批处理文件,该文件应该检查条件,如果条件为真,则调用其他子批处理文件。

我试图通过 START实现它,但它给我一个空的黑色命令提示符运行在儿童批处理文件目录中,而不是运行儿童批处理文件本身

对我有效的方法是使用 STARTCALL的组合

举个例子

condition ...


start call "C:\Users\Amd\conn\wsl_setup - conn1.bat"


start call "C:\Users\Amd\conn\wsl_setup - conn2.bat"


start call "C:\Users\Amd\conn\wsl_setup - conn3.bat"