Я бы определенно порекомендовал перейти на PowerShell (на мой взгляд, это проще) и имеет кучу cmd-let, чтобы помочь с такими вещами.
В этом случае мы предполагаем, что Google Chrome имеет 2 пути установки, и поэтому это основная переменная, которую мы должны учитывать. Используя опцию Test-Path, мы можем продиктовать 2 UNC-пути для потенциальной опции.
Вот скрипт, который использует «Test-Path», который мы можем проверить, если Google Chrome существует в Program Files (x86), и если нет, мы присваиваем значение LocalAppData.
Вот:
$ConfirmGoogleChrome = (Test-Path "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe")
$Process = "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
function OpenChromeFullScreen {
If ($ConfirmGoogleChrome -eq $True) {
start $Process --start-fullscreen --app="https://www.netflix.com"
}
else {
$Process = "%localappdata%\google\chrome\application\chrome.exe"
start $Process --start-fullscreen --app="https://www.netflix.com"
}
}
OpenChromeFullScreen
Обратите внимание, что PowerShell был включен по умолчанию в Windows Vista (я полагаю) и далее, и для его работы требуется Net Framework, который должен быть включен в большинстве современных версий ОС.
Обновить
Из-за комментариев о том, что это может быть не так надежно, как требуется (поскольку мы не можем предположить, что C:\
- это путь установки ОС), я сделал небольшое "улучшение":
# Variables for the HomeDrive (OS Install Path)
# Inclusive of the path to AppData
$OSInstallPath = $env:HOMEDRIVE
$OSLocalAppData = $env:LOCALAPPDATA
# Performs Checks on the end path
$ChromeProgramFiles = (Test-Path "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe")
$ChromeLocalAppData = (Test-Path "$OSLocalAppData\google\chrome\application\chrome.exe")
# Variable for Google Chrome Path
# We default this to Program Files
$GoogleChrome = "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
# Function to set the paths
Function ConfirmSetPaths {
If ($ChromeProgramFiles -eq $False) {
$GoogleChrome = "$OSLocalAppData\google\chrome\application\chrome.exe"
}
}
ConfirmSetPaths
Start "$GoogleChrome" --start-fullscreen --app="https://www.netflix.com"
По сути, мы создаем переменные (« $OSInstappPath
» и « $OSLocalAppData
», которые являются системными связанными переменными) для пути установки на вашем ПК (поскольку путь UNC может изменяться в зависимости от того, кто его запускает.
Затем мы создаем дополнительные 2 переменные для двух путей, где может существовать chrome.exe
. Функция ConfirmSetPaths
проверит, существует ли chrome.exe
по пути "по умолчанию" на ПК (в данном случае мы использовали « C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
»).
Если он существует здесь, он запускает программу. Если нет, он изменяет переменную $GoogleChrome
на локальную папку «Данные приложения», а затем запускается отсюда.
Изменения:
- Теперь использует переменные
$env
для указания пути установки ОС;