[英]PowerShell Install MSI with Property File
我希望用PowerShell文件替换旧的命令文件,以便在多个服务器上安装msi,以实现远程自动安装。
我正在尝试执行的操作,这就是如何使PowerShell安装msi,其中安装依赖于来自属性文件的详细信息作为一个参数,同时将安装注销为日志文件并设置新的用户名。和密码?
当前,我们的旧cmd文件看起来像这样:
msiexec / I mymsi.msu / quiet / lv mymsi.log USERNAME = AName PASSWORD = APassword CONFIG =“ C:\\ Some.properties.env”
我想要做的是在PowerShell中重新创建它,但是我找不到能起作用的示例。
我建议使用Start-Process
和Splatting
使其可读性和功能性:
$startProcessParams = @{
'FilePath' = "$Env:SystemRoot\System32\MSIEXEC.exe"
'ArgumentList' = @(
'/i', 'mymsi.msu'
'/quiet'
'/lv', 'mymsi.log'
'USERNAME=AName', 'PASSWORD=APassword', 'CONFIG="C:\Some.properties.env"'
)
'WorkingDirectory' = $PSScriptRoot
'Wait' = $true
'PassThru' = $true
}
$process = Start-Process @startProcessParams
return $process.ExitCode
确保将WorkingDirectory
设置为您的.msu
文件所在的位置。
about_Splatting
Start-Process
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.