Я написал сценарий PowerShell для Server 2008 R2, чтобы проверить, установлены ли определенные роли и функции, и если они не будут их устанавливать (конечно, я сначала импортировал модуль ServerManager), то есть:Установка нескольких серверных ролей с помощью PowerShell
if ((Get-WindowsFeature AS-NET-Framework).Installed -eq 0)
{$InstallFeatures += "AS-NET-Framework,"
Write-Host "AS-NET-Framework will be added"}
if ((Get-WindowsFeature GPMC).Installed -eq 0)
{$InstallFeatures += "GPMC,"
Write-Host "GPMC will be added"}
но когда я призываю
Add-WindowsFeature $InstallFeatures
это дает ошибку, что имя не было найдено. Как-то PS не принимает запятую как разделитель в строке.
Но если вы наберете
Add-WindowsFeature AS-NET-Framwork,GPMC
в консоли работает просто отлично.
Есть ли способ вызвать Add-WindowsFeature
со всеми параметрами, которые мне нужны в одной строке, не создавая новую переменную для каждой проверки, потому что тогда мне понадобится только одна перезагрузка для всех отсутствующих ролей и функций?
Заранее спасибо.
Большое спасибо, это решение работало нормально. – IronGibbet
@IronGibbet Всегда рад помочь. Чтобы избежать этих ошибок в будущем, посмотрите на miscrosoft msdn/technet, чтобы увидеть подписи командлета! –