如何在 Azure Functions 中获取列出 运行 的 Azure PowerShell 模块版本?
How to get Azure PowerShell modules versions listing running in a Azure Function?
我使用 PowerShell 作为编程语言创建了一个定时器触发器 Azure 函数。
我想知道什么是 Azure PowerShell 模块及其在 Azure Function PowerShell 环境中可用的相应版本。我尝试使用下面的 PowerShell 代码来获得我想要的东西。
Get-Module -ListAvailable -Name *Azure*
不带版本返回结果如下。
所以问题是 should/could 我在 Azure Function 中做了什么来获取 Azure PowerShell 模块和版本?
注意:本地 Windows PowerShell 上的相同 PowerShell 代码 运行 能够列出 Azure PowerShell 模块名称、版本和其他详细信息。
因为您只是这段代码并依赖于写入日志的输出;它将为为主机定义的类型使用默认输出视图;并在此处生成名称上的 ToString()。
当您 运行 客户端上的 cmdlet(来自 powershell 或 ISE)时,它将使用在您的主机上为该类型定义的任何输出视图;导致输出被不同地处理(类型和格式)。
你可以,例如select 格式化您自己的自定义输出以列出您想要的信息。
示例:
Get-Module -ListAvailable -Name *Azure*|ForEach-Object { "Name={0};Version={1};" -f $_.Name , $_.Version}
它会在输出日志中输出名称和版本,用;隔开。如果您需要额外的信息,您可以将其添加到字符串格式函数中或在 Foreach 中添加更复杂的输出。
如果您对输出和默认格式的工作原理感兴趣,我推荐这个 MSDN article
我使用 PowerShell 作为编程语言创建了一个定时器触发器 Azure 函数。
我想知道什么是 Azure PowerShell 模块及其在 Azure Function PowerShell 环境中可用的相应版本。我尝试使用下面的 PowerShell 代码来获得我想要的东西。
Get-Module -ListAvailable -Name *Azure*
不带版本返回结果如下。
所以问题是 should/could 我在 Azure Function 中做了什么来获取 Azure PowerShell 模块和版本?
注意:本地 Windows PowerShell 上的相同 PowerShell 代码 运行 能够列出 Azure PowerShell 模块名称、版本和其他详细信息。
因为您只是这段代码并依赖于写入日志的输出;它将为为主机定义的类型使用默认输出视图;并在此处生成名称上的 ToString()。
当您 运行 客户端上的 cmdlet(来自 powershell 或 ISE)时,它将使用在您的主机上为该类型定义的任何输出视图;导致输出被不同地处理(类型和格式)。
你可以,例如select 格式化您自己的自定义输出以列出您想要的信息。
示例:
Get-Module -ListAvailable -Name *Azure*|ForEach-Object { "Name={0};Version={1};" -f $_.Name , $_.Version}
它会在输出日志中输出名称和版本,用;隔开。如果您需要额外的信息,您可以将其添加到字符串格式函数中或在 Foreach 中添加更复杂的输出。
如果您对输出和默认格式的工作原理感兴趣,我推荐这个 MSDN article