gpt4 book ai didi

string - 如何在 PowerShell 中将 ResourceId 变量转换为字符串?

转载 作者:行者123 更新时间:2023-12-03 04:18:14 27 4
gpt4 key购买 nike

我在 PowerShell 中将 ResourceID 转换为字符串时遇到问题。

我有一个列表,其中包含 Azure 订阅中的每个虚拟接口(interface)信息。

$virtualInterfaceArray = @(Get-AzureRmNetworkInterface)

然后我将该列表的索引值放入一个变量中,因此我无法获得我想要的确切信息。例如:

$hostVirtualInterfaceIndex = $virtualInterfaceArray[5]
$hostVirtualInterfaceVM = hostVirtualInterfaceIndex.VirtualMachine

如果我打印 $hostVirtualInterfaceVM 它会返回:

PS C:\Users\marcelo.salvatori> $hostVirtualInterfaceVM
Id
--
/subscriptions/301238dsf0sdfj/resourceGroups/rg-test/providers/Microsoft.Compute/virtualMachines/vmtest

我知道我不能使用 .Split() 方法,因为它不是字符串。所以我尝试使用 .ToString() 方法来对抗它:

PS C:\Users\marcelo.salvatori> $hostVirtualInterfaceVMString = hostVirtualInterfaceVM.ToString()

但是,当我打印变量时,它返回:

PS C:\Users\marcelo.salvatori> $hostVirtualInterfaceVMString
Microsoft.Azure.Commands.Network.Models.PSResourceId

我需要这个对话,以便我可以使用 .Split() 方法。

最佳答案

如果您想获取与该 NIC 关联的虚拟机名称。请尝试使用以下代码。

Get-AzureRmNetworkInterface |  Select-Object -Property Name, @{Name="VMName";Expression = {$_.VirtualMachine.Id.tostring().substring($_.VirtualMachine.Id.tostring().lastindexof('/')+1)}}

关于string - 如何在 PowerShell 中将 ResourceId 变量转换为字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51196361/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com