团队,
谢谢您,我是一名IT专业人员,正在编写一个脚本,该脚本提供了vm名称,vm大小以及所附数据磁盘大小的输出。
下面是我用于非托管和托管磁盘vm的命令。我想知道是否可以通过某种方式使用get-azurermvm来获取连接的磁盘类型(如果是SSD或HDD)的详细信息?
$allvm = Get-Azurermvm | ForEach-Object {
$props = [ordered]@{
"Name" = $_.name
"Disk Size" = $_.StorageProfile.DataDisks.disksizegb
"VM Size" = $_.HardwareProfile.VmSize
}
$Result += @(New-Object pscustomobject -Property $props)
}
Write-Output $Result
答案 0 :(得分:1)
说实话,您的问题并未表明您在进行任何真正的研究(How to ask a good question)。
如果您已经阅读了正在使用的类的文档(DataDisk),则可能会注意到ManagedDisk属性本身具有另一个名为StorageAccountType的属性,其中包含您的信息正在寻找。
这样的事情应该可以解决(未经测试,如果有多个磁盘,可能必须遍历Datadisks
)
$allvm = Get-Azurermvm | ForEach-Object {
$props = [ordered]@{
"Type" = $_.StorageProfile.DataDisks.ManagedDisk.StorageAccountType
"Name" = $_.name
"Disk Size" = $_.StorageProfile.DataDisks.disksizegb
"VM Size" = $_.HardwareProfile.VmSize
}
$Result += @(New-Object pscustomobject -Property $props)
}
Write-Output $Result
我想离开我的最后一件事,所以这不是您的“团队”,也不是脚本编写或研究服务。我们在这里为困难的问题提供帮助,我们大多数人出于好奇或无聊而这样做,而像您这样的语气却很难接受。话虽如此,我想与其说是在愚蠢的评论中告诉我,还不如说在愚蠢的答案中
答案 1 :(得分:0)