我正在尝试按照以下说明安装 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")
我希望这有帮助。