在Windows 10中如何使用cmd在一行中运行多个命令

4
正如标题所述,我需要在Windows 10中使用cmd以一行精确地运行两个命令。这是否可能?

1
可能是Windows批处理文件中一行上的多个命令的重复问题。 - aschipfl
3个回答

11

要运行两个命令,请使用&。两个命令都将被执行:

dir file.txt & echo done

使用&&,只有在第一个命令执行成功时才会执行第二个命令:

dir existentfile.txt && echo done

如果第一个命令失败,则使用||运行第二个命令:

dir nonexistentfile.txt || echo not found

您可以组合以下内容:

dir questionablefile.txt && (echo file exists) || (echo file doesn't exist)

7

易于从常用语法中选择:

在一行中运行多个命令(cmd1,cmd2,cmd3):

cmd1 & cmd2 & cmd3// 从左到右运行所有命令 (& => all)
cmd1 && cmd2 && cmd3// 从左到右运行所有命令,停止在第一个失败处 (&& => till fail)
cmd1 | cmd2 | cmd3//从左到右运行所有命令,停止在第一个失败处,也是|管道符号,将cmd1的输出发送给cmd2等,所以当你想将输出传递给其他命令时使用| - (| => till fail + pass output of left to right)
cmd1 || cmd2 || cmd3//从左到右运行所有命令,停在第一个成功处 (|| => till good)

总结:

&  => run all  
&& => run L2R till fail  
|  => run L2R till fail + pass output of left to right  
|| => run L2R till good
   where, L2R is left to right

希望这有所帮助。

-2

cmd1;cmd2

cmd1&cmd2

cmd1|cmd2


3
第一行无法运行(无视第二行或给出语法错误 - 取决于实际命令)。第三行将第一个命令的输出导向第二个命令(第二行是更好的选择)。 - Stephan
第一行是cmd中的错误,在powershell中正确。非常抱歉。 第二行和第三行完全符合作者要求“我需要在Windows 10中使用cmd运行确切的两个命令”。感谢Stepan提供&&和||的情况。但最后一个情况不符合“确切的两个命令”的要求)。 - mazzy

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接