Install-Module: термин "Install-Module" не распознается как имя командлета
Я пытаюсь установить Azure с помощью Install-Module Azure
в PowerShell. Я получил следующую ошибку:
PS C:\Windows\system32> Install-Module Azure
Install-Module : The term 'Install-Module' is not recognized as the name of a cmdlet, function, script file,
or operable program. Check the spelling of the name, or if a path was included, verify that the path is corre
ct and try again.
At line:1 char:1
+ Install-Module Azure
+ ~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Install-Module:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
Почему PS не распознает базовый модуль установки? Без этого я даже не могу установить Azure. Что мне делать?
Ответы
Ответ 1
Поскольку вы используете более низкую версию PS:
Что вы можете сделать в своем случае - сначала загрузите модуль в свою локальную папку.
Затем в этой папке для этого модуля будет файл .psm1.
Вы просто
import-Module "Путь к файлу .psm1"
Вот ссылка для загрузки Azure Module:
Azure Powershell
Это сделает вашу работу.
Ответ 2
Другой вариант, основанный на GUI для исправления этой ошибки, - загрузить Пакетное управление PowerShell Modules (установщик MSI) с сайта Microsoft и установить модули.
Как только это будет установлено, вы не получите "Install-Module" не распознается как ошибка "cmdlet".
Ответ 3
Вам следует установить последнюю версию PowerShell, а затем использовать эту команду Install-Module Azure
для установки Install-Module Azure
. Потому что начиная с Powershell 5.0 вы сможете использовать командлет для Install-Module, Save-Module
PS > $psversiontable
Name Value
---- -----
PSVersion 5.1.14393.576
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.14393.576
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
Подробнее об установке Azure PowerShell см. По ссылке.
Ответ 4
На самом деле мое решение этой проблемы было намного проще, потому что у меня уже была последняя версия PowerShell и я до сих пор не распознал команду Install-Module
. Для меня "проблема" заключалась в том, что я просто набирал команду вручную, так как изначально я пытался скопировать фрагмент с веб-сайта, и, очевидно, возникла некоторая проблема с форматированием при копировании и вставке, поэтому, когда я набирал команду вручную, он устанавливал модуль без каких-либо проблема.
Ответ 5
Если вы пытаетесь установить модуль, указанный в центральном репозитории для содержимого PS под названием PowerShell Gallery, вам необходимо установить PowerShellGet. Тогда команда будет доступна. В настоящее время я использую PS 4.0. Установка PowerShellGet сделала трюк для меня.
Источник:
С последним модулем PowerShellGet вы можете:
- Поиск по элементам в Галерее с помощью Find-Module и Find- Script
- Сохранение элементов в вашей системе из галереи с помощью Save-Module и Save- Script
- Установить элементы из галереи с помощью Install-Module и Install- Script
- Загрузка элементов в галерею с помощью Publish-Module и Publish- Script
- Добавьте свой собственный репозиторий с помощью Register-PSRepository
Еще одна отличная статья, чтобы начать работу с PS Gallery.
Ответ 6
У меня не было поставщика пакетов NuGet, вы можете проверить запуск Get-PackageProvider
:
PS C:\WINDOWS\system32> Get-PackageProvider
Name Version DynamicOptions
---- ------- --------------
msi 3.0.0.0 AdditionalArguments
msu 3.0.0.0
NuGet <NOW INSTALLED> 2.8.5.208 Destination, ...
Решение было установить его с помощью этой команды:
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force
Если это не помогло из-за указанной ниже ошибки, вы можете скопировать/вставить папку NuGet с другого компьютера (требуется администратор): C:\Program Files\PackageManagement\ProviderAssemblies\NuGet:
WARNING: Unable to download from URI 'https://onegetcdn.azureedge.net/providers/Microsoft.PackageManagement.NuGetProvider-2.8.5.208.dll' to ''.
WARNING: Failed to bootstrap provider 'https://onegetcdn.azureedge.net/providers/nuget-2.8.5.208.package.swidtag'.
WARNING: Failed to bootstrap provider 'nuget'.
WARNING: The specified PackageManagement provider 'NuGet' is not available.
PackageManagement\Install-PackageProvider : Unable to download from URI
'https://onegetcdn.azureedge.net/providers/Microsoft.PackageManagement.NuGetProvider-2.8.5.208.dll' to ''.
At C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\PSModule.psm1:6463 char:21
+ $null = PackageManagement\Install-PackageProvider -Name $script:NuGe ...