我想在Windows CMD控制台中运行两个命令。

在Linux中我会这样做

touch thisfile ; ls -lstrh

在Windows上是怎么做的呢?


当前回答

是的,有。&。

如果命令1没有失败,&&将在命令1完成时执行命令2。

无论如何都会执行。

其他回答

嗯,你有两个选择:管道,或只是&:

DIR /S & START FILE.TXT

Or,

tasklist | find "notepad.exe"

管道(|)主要用于获取一个命令的输出,并将其输入到另一个命令中。(&)表示运行这个和那个。

文档中的一段话:

来源:微软,Windows XP专业产品文档,命令shell概述 另外:Windows CMD命令的A-Z索引

Using multiple commands and conditional processing symbols You can run multiple commands from a single command line or script using conditional processing symbols. When you run multiple commands with conditional processing symbols, the commands to the right of the conditional processing symbol act based upon the results of the command to the left of the conditional processing symbol. For example, you might want to run a command only if the previous command fails. Or, you might want to run a command only if the previous command is successful. You can use the special characters listed in the following table to pass multiple commands. & [...] command1 & command2 Use to separate multiple commands on one command line. Cmd.exe runs the first command, and then the second command. && [...] command1 && command2 Use to run the command following && only if the command preceding the symbol is successful. Cmd.exe runs the first command, and then runs the second command only if the first command completed successfully. || [...] command1 || command2 Use to run the command following || only if the command preceding || fails. Cmd.exe runs the first command, and then runs the second command only if the first command did not complete successfully (receives an error code greater than zero). ( ) [...] (command1 & command2) Use to group or nest multiple commands. ; or , command1 parameter1;parameter2 Use to separate command parameters.

我试图创建批处理文件启动提升cmd,并使其运行2个单独的命令。 当我使用&或&&字符时,我遇到了一个问题。例如,这是我的批处理文件中的文本:

powershell.exe -Command "Start-Process cmd \"/k echo hello && call cd C:\ \" -Verb RunAs"

我得到解析错误:

经过几次猜测,我发现,如果你用“&&”这样的引号包围&&,它是有效的:

powershell.exe -Command "Start-Process cmd \"/k echo hello "&&" call cd C:\ \" -Verb RunAs"

结果如下:

也许这能帮到别人:)

是的,有。&。

如果命令1没有失败,&&将在命令1完成时执行命令2。

无论如何都会执行。

不,cd / && tree && echo %time%。回显的时间是第一个命令执行时的时间。

管道有一些问题,但这并不重要,只要人们知道它是如何工作的。