cmd.exe vs & 用于执行批处理文件?



我想从Powershell执行批处理(*.bat(文件。有什么理由不使用下面的选项 1 吗?

  1. & path-to-batch-file
  2. cmd.exe /c path-to-batch-file

我只能想到极端情况...

选项 1 可能对.bat文件使用默认文件处理程序。如果该处理程序已更改、损坏或与预期不同,则可能会出现问题。不过,这似乎不太可能。

选项 2 使您能够将其他参数传递给cmd.exe,这可能很有价值。

选项 2可能稍快一些,但这只是猜测:在选项 1 中,powershell 可能需要首先从注册表中查找批处理文件的 shell 处理程序,然后执行这些指令,而选项 2 只需要找到cmd.exe可执行文件并使用提供的参数运行它。

最新更新