我最近才开始使用(并学习如何)脚本。我正在使用Powershell ISE,并试图创建一个脚本,该脚本可以在一台新计算机上运行,以安装多个/各种程序。我在.exe和.msi中都有程序,并希望这些程序能够默默地、连续地安装。再次,我是一个初学者,但已经把下面的脚本,以完成这一点。我试图找出哪些变量/命令将确保程序一个接一个地安装。
msiexec.exe /q /i '\\Server\Folder\Applications\msi files\file.msi'
msiexec.exe /q /i '\\Server\Folder\Applications\msi files\file.msi'
msiexec.exe /q /i '\\Server\Folder\Applications\msi files\file.msi'
msiexec.exe /q /i '\\Server\Folder\Applications\msi files\file.msi'
msiexec.exe /q /i '\\Server\Folder\Applications\msi files\file.msi'
msiexec.exe /q /i '\\Server\Folder\Applications\msi files\file.msi'
我最初将它作为一个.bat文件启动,并且可以运行它来安装.exe文件,但是它们都同时运行。因此,我认为创建一个脚本(而不是.bat文件)是我最好的选择。任何和所有的投入和或帮助是非常感谢的!
发布于 2019-01-02 22:59:28
如果您想要一次运行多个.msi文件,那么这是不可能的。如果您想要连续运行它们,则在Powershell中如下所示:
如果是msi:
Start-Process msiexec.exe -Wait -ArgumentList '/I ProgramName.msi /quiet'
如果它是一个exe:
Start-Process programname.exe -Wait -ArgumentList '/I /quiet'
基本上,-Wait参数将一直等到windows安装程序关闭,直到它进入下一行代码。根据开发人员的不同,有些msi确实有不同的分类方式。有时是/q,/qn或/quiet。
发布于 2019-01-03 02:15:11
Windows msiexec.exe
:msiexec.exe
引擎应该在退出之前等待安装完成。我怀疑您的命令行是错误的,这就是为什么看起来它们都同时运行和退出。
MyTest.cmd
示例命令行:可能尝试这个命令行(可能放入并运行):
msiexec.exe /i MySetup.msi /L*V C:\MyLog.log /qn ADDLOCAL=ALL REBOOT=ReallySuppress ALLUSERS=1
为您需要安装的每个MSI重复命令行。
Logging:很明显,日志文件应该有唯一的名称。您可以使用'Globally for all setups on a machine'
). ( 为所有MSI安装启用日志记录节)然后,在每次执行MSI操作后,您将在系统的%TEMP%
文件夹中找到一个具有随机名称的新MSI日志文件。按更改日期排序,以查找最新的更改日期。若要在MSI日志中查找错误,请使用尝试搜索“值3”。
请提供更多信息。请不要添加你自己的答案,而是编辑你原来的问题。只需添加更多信息,删除或任何你需要的。我们有版本控制,所以如果需要的话,我们可以找到您删除的内容。
https://stackoverflow.com/questions/54008974
复制相似问题