Azurerm 模块不适用于 MACOS Catalina

Azure RM module doesn't work on MACOSX Catalina

我正在尝试在 OSXCatalina 上的 Powershell 核心上使用 AzureRM 和 AZ 模块,但是,当我尝试使用 cmdlet Login-AzureRmAccount 或 Login-AzAccount 时。我收到以下错误。 我目前使用的是 Powershell 版本 7

Login-AzureRmAccount:术语 'Login-AzureRmAccount' 未被识别为 cmdlet、函数、脚本文件或可运行程序的名称。 检查名称的拼写,或者如果包含路径,请验证路径是否正确,然后重试。

Login-AzAccount:在模块 'Az.Accounts' 中找到 'Login-AzAccount' 命令,但无法加载该模块。更多信息,运行 'Import-Module Az.Accounts'.

这不是 Powershell 代码问题,我们在此提供帮助。您的问题是环境问题,因此确实应该将其移至 SuperUser 或 StackExchange。

然而,既然你在这里,这是环境问题,因为你可能没有设置它 correctly/completely,如何设置和使用它在 MS Docs、MSDN 和许多其他文档中有完整的文档遍布网络的位置。快速搜索,例如使用 'AzureRM osx' 会向您显示如下所示的内容。这些:

PowerShell, Azure and macOS? Absolutely!

With Azure CLI on macOS you can do interesting things like provisioning new VMs or get a status overview on them. But Azure CLI is not PowerShell and so it lacks some features I really appreciate.

There are several steps to do in order to be able to manage Azure via PowerShell on your Mac:

Install PowerShell
Install .NET Core
Install the AzureRm.NetCore.Preview module

brew update
brew install openssl
ln -s /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib /usr/local/lib/
ln -s /usr/local/opt/openssl/lib/libssl.1.0.0.dylib /usr/local/lib/

After that you can download the official installer of .NET Core for macOS. After installation you need to initialize some code. You can do that by using the following commands:

mkdir hwapp
cd hwapp
dotnet new
dotnet restore
dotnet run

Install-Package -Name AzureRM.NetCore.Preview -Source https://www.powershellgallery.com/api/v2 -ProviderName NuGet -ExcludeVersion -Destination /usr/local/microsoft/powershell/6.0.0-alpha.11/Modules

get-module -listAvailable

AzureRM PowerShell Mac OS X

Everything can be resolved by installing AzureRM from here:

Install-Package -Name AzureRM.NetCore.Preview -Source https://www.powershellgallery.com/api/v2/ -ProviderName NuGet -ExcludeVersion -Destination $home/powershell/modules

Import-Module $home/powershell/modules/AzureRM.Profile.NetCore.Preview
Import-Module $home/powershell/modules/AzureRM.Resources.NetCore.Preview
Import-Module $home/powershell/modules/AzureRM.NetCore.Preview
Login-AzureRmAccount

PS。每次重新启动 PowerShell 时都必须重新运行 Import-Module。

Powershell and Azure on MacOS

嗯,除非你把它放在你的个人资料中。