所以我现在有一个PowerShell脚本,安装各种软件默默在PowerShell脚本执行验证和检查
我在看什么都是它完美地工作的命令:
Start-Process 'C:\Files\Install files\Firefox' -ArgumentList "/S" -Wait
Start-Process 'C:\Files\Install files\Office' -ArgumentList "/s" -Wait
Start-Process 'C:\Files\Install files\Zeb' -ArgumentList "/S" -Wait
我现在想实现的是'检查安装是否成功'。
我通过检查安装文件,启动程序:
Write-Host "Checking if install files are present..."
if(Test-Path 'C:\Files\Install files\')
{
Write-Host "Files located. Installation will begin"
Write-Host ""
} else
{
Write-Host "Files not located, please check the directory"
Write-Host ""
break
}
而且由于上面的代码工作我想,我可能会在同一安装软件?但是,使用该软件的目录作为测试路径功能:
Write-Host "Installing Firefox"
Start-Process 'C:\Files\Install files\Firefox' -ArgumentList "/S" -Wait
if (Test-Path C:\Program Files(x86)\Firefox)
{
Write-Host "Firefox succesfully installed!"
}else
{
Write-Host "Error, FireFox hasn't been installed"
}
....而继续喜欢本作的其他程序
我想“为什么不呢?”因为所有的PC都是一样的,我必须承认代码也可以工作。
但是,如何有人会判断这种方法?什么是替代品?
感谢
为什么不检查安装程序的返回码? –
我发现安装程序的代码可能会在创建它的工程师上有所不同(其中一个带有字符串,另一个带有错误ID,...) –