如何使用 PowerShell 批处理文件安装 MSI 文件?
powershellmicrosoft technologiessoftware & coding
假设我们有一个 MSI 文件,需要使用 PowerShell 在远程计算机上安装该文件,但该 MSI 文件需要通过批处理文件部署,并使用 PowerShell 执行。
在本例中,我们有一个 7-Zip MSI 文件和一个批处理文件,我们将首先编写如下所示的安装指令。
msiexec /i "C:\temp\7z1900-x64.msi" /quiet
安装 MSI 包位于 C:\temp 目录下。我们将上述指令保存到 7ZipInstaller.bat 文件中。
现在我们需要调用批处理文件,如下所示。
`-Wait` 会等待批处理文件执行完毕,然后再执行下一条指令(如果有),而 `-NoNewWindow` 则会……Start-Process C:\Temp\7zipInstaller.bat -Wait -NoNewWindow
运行上述命令后,7zip 将被安装到指定位置。您可以直接在 `Start-Process` 命令中传递这些指令来执行 MSI 安装包,但如果我们需要执行批处理文件,那么这种方法更好,因为我们也可以远程调用该批处理文件。以下命令适用于远程计算机。
Invoke-Command -ComputerName TestMachine1, TestMachine2 -ScriptBlock{
Start-Process C:\Temp\7zipInstaller.bat -Wait -NoNewWindow
}
此命令将在计算机 Testmachine1 和 Testmachine2 上运行。请确保在运行此命令之前将 MSI 包复制到远程位置。

