Как проверить, установлен ли Google Chrome и если нет — установить его?

Есть строчка из начального скрипта при установке GCWP
$LocalTempDir = $env:TEMP; $ChromeInstaller = "ChromeInstaller.exe"; (new-object    System.Net.WebClient).DownloadFile('http://dl.google.com/chrome/install/375.126/chrome_installer.exe', "$LocalTempDir\$ChromeInstaller"); & "$LocalTempDir\$ChromeInstaller" /silent /install; $Process2Monitor =  "ChromeInstaller"; Do { $ProcessesFound = Get-Process | ?{$Process2Monitor -contains $_.Name} | Select-Object -ExpandProperty Name; If ($ProcessesFound) { "Still running: $($ProcessesFound -join ', ')" | Write-Host; Start-Sleep -Seconds 2 } else { rm "$LocalTempDir\$ChromeInstaller" -ErrorAction SilentlyContinue -Verbose } } Until (!$ProcessesFound)


Так как для GCWP нужен chrome а на некоторых компьютерах он уже стоит, какой скприт перед этим применить что бы он сначала чекнул установле ли гугл хром, е и если да, то пропустил бы этот абзац?
  • Вопрос задан
  • 57 просмотров
Решения вопроса 2
SignFinder
@SignFinder
Wintel\Unix Engineer
1. Гуглить по Powershell check installed applications (если хотите проверять в списке установленных программ)
2. Гуглить - Powershell check if foler\file exists (если хотите проверять файл или папку по конкретному пути)
3. Написать условие проверки if $true exit по установленной программе из списка установленных или по наличию конкретного файла или папки
Ответ написан
@Capey Автор вопроса
Вжух
Решил вопрос вот так
if (!( Test-Path "C:\Program Files\Google\Chrome" ))
{
$LocalTempDir = $env:TEMP; $ChromeInstaller = "ChromeInstaller.exe"; (new-object System.Net.WebClient).DownloadFile('dl.google.com/chrome/install/375.126/chrome_instal...', "$LocalTempDir\$ChromeInstaller"); & "$LocalTempDir\$ChromeInstaller" /silent /install; $Process2Monitor = "ChromeInstaller"; Do { $ProcessesFound = Get-Process | ?{$Process2Monitor -contains $_.Name} | Select-Object -ExpandProperty Name; If ($ProcessesFound) { "Still running: $($ProcessesFound -join ', ')" | Write-Host; Start-Sleep -Seconds 2 } else { rm "$LocalTempDir\$ChromeInstaller" -ErrorAction SilentlyContinue -Verbose } } Until (!$ProcessesFound)
}
if (-not ( Test-Path "C:\ProgramFiles\Google\Chrome" )) { дальше код который должен идти если гугла стоит
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы