运行 Azure powershell 时遇到问题

运行 Azure powershell 时遇到问题

我正在尝试按照以下说明安装 Azure Powershell这一页

安装似乎运行良好并且没有出现错误。

但是,一旦完成,我就找不到该Azure Powershell应用程序了。我处理了各种终端

  • Windows Azure 命令提示符
  • Windows Azure 存储命令行

但这些似乎都不起作用。所谓起作用,我的意思是成功运行示例中的第一个命令:

Add-AzureAccount

当我这样做时,它给出了以下错误:

'Add-Azure Account' is not recognized as an internal control 
or external, operable program or batch file.

最重要的是,我在“所有已安装的软件”列表中没有看到任何关于 Azure Powershell 的提及:

在此处输入图片描述

我可以成功运行以下命令:

Import-Module MSOnline
Get-Module MSOnline 
    gives me -> Manifest   MSOnline                  {Add-MsolRoleMember, Remove-MsolForeignGroupFromRole, Get-MsolFederation...

但是,以下命令会出现相同的错误(ModuleNotFound):

Import-Module Azure
Import-Module AzureResourceManager
Import-Module AzureProfile

这是很合乎逻辑的,因为它们没有出现在我的模块列表中:

PS C:\Users\matthews> Get-Module -ListAvailable

ModuleType Name                      ExportedCommands
---------- ----                      ----------------
Manifest   AppLocker                 {}
Manifest   BitsTransfer              {}
Manifest   MSOnline                  {}
Manifest   MSOnlineExtended          {}
Manifest   PSDiagnostics             {}
Manifest   PSReadline                {}
Manifest   TroubleshootingPack       {}

总而言之,提供的解决方案这里不起作用,因为文件夹PowerShell中没有目录Windows Azure

是我误解了什么吗,或者这是安装引起的问题?

注意:我也尝试使用独立安装程序进行安装,但在这种情况下,我收到一条明确的错误消息:

This setup requires the Windows PowerShell 3.0 or compatible version to be installed.

由于各种原因,我在安装新版本的 Powershell 时遇到了麻烦,但它可能是解决方案。

答案1

命令

Import-Module "C:\Program Files (x86)\Microsoft SDKs\..."

可以工作,但是路径已经随着时间而改变。

您可能只需要重新启动,这样 $env:PSModulePath 就会被更新。

但是如果您想快速修复而不需要重新启动,您可以运行这个脚本,它就可以解决问题。

if( (Get-Module -ListAvailable azure | measure).Count -eq 0 )
{
    # == Refresh the Environment variable if just intall the tools without rebooting and try again
    $env:PSModulePath = [System.Environment]::GetEnvironmentVariable("PSModulePath","Machine")

    if( (Get-Module -ListAvailable azure | measure).Count -eq 0 )
    {
        echo("You must install the Azure PowerShell Tools. Go at: http://go.microsoft.com/?linkid=9811175&clcid=0x409")
        Read-Host "Press enter key to close"
        exit
    }
}

echo("Azure PowerShell is installed")

我希望这有帮助。

相关内容