出于某种原因,Get-VM 命令并不总是返回注释?
Get-VM command is not always returning Notes for some reason?
我正在尝试编写一个简单的 PS 脚本来获取 Hyper-V 主机上的 VM 列表,但由于某些原因 Notes
并不总是 returned -ExpandProperty NetworkAdapters
被使用。见截图:
.
这是我正在使用的两个不同的命令:
Get-VM | Select-Object -ExpandProperty NetworkAdapters | Select-Object VMName,Status, IPAddresses,ComputerName, Hostname, Notes | Format-Table -AutoSize
Get-VM | Select-Object VMName,IPAddresses,ComputerName, Hostname, Notes | Format-Table -AutoSize
我正在尝试获取:
- 虚拟机名称(
VMName
)
- VM 的状态(是否为 running/stopped。
Status
似乎工作正常)
- IPv4 地址(我正在使用
IPAddresses
)
- VM 的主机名(
ComputerName
和 Hostname
目前无法正常工作,稍后我会解决)
- 虚拟机上的注释(
Notes
并不总是 return 一个值)
那么知道为什么注释不总是 return 吗?
如果您尝试将 Get-VM | Select-Object -ExpandProperty NetworkAdapters
传送到 get-member,它不会 return 注释 属性。这就是为什么您不能让它显示注释的原因。
你可以制作一个 pscustomobjet,也许是这样的。
$vms = Get-VM
ForEach ($vm in $vms) {
[PSCustomObject][ordered]@{
'VMName' = $vm.Name
'VM Status ' = $vm.Status
'IP addresse' = ($vm | Select-Object -ExpandProperty NetworkAdapters).ipaddresses
'Bytes Total/sec Ethernet' = $vm.computername
'Bytes Total/sec WiFi' = $vm.notes
}
}
/安德斯
我正在尝试编写一个简单的 PS 脚本来获取 Hyper-V 主机上的 VM 列表,但由于某些原因 Notes
并不总是 returned -ExpandProperty NetworkAdapters
被使用。见截图:
这是我正在使用的两个不同的命令:
Get-VM | Select-Object -ExpandProperty NetworkAdapters | Select-Object VMName,Status, IPAddresses,ComputerName, Hostname, Notes | Format-Table -AutoSize
Get-VM | Select-Object VMName,IPAddresses,ComputerName, Hostname, Notes | Format-Table -AutoSize
我正在尝试获取:
- 虚拟机名称(
VMName
) - VM 的状态(是否为 running/stopped。
Status
似乎工作正常) - IPv4 地址(我正在使用
IPAddresses
) - VM 的主机名(
ComputerName
和Hostname
目前无法正常工作,稍后我会解决) - 虚拟机上的注释(
Notes
并不总是 return 一个值)
那么知道为什么注释不总是 return 吗?
如果您尝试将 Get-VM | Select-Object -ExpandProperty NetworkAdapters
传送到 get-member,它不会 return 注释 属性。这就是为什么您不能让它显示注释的原因。
你可以制作一个 pscustomobjet,也许是这样的。
$vms = Get-VM
ForEach ($vm in $vms) {
[PSCustomObject][ordered]@{
'VMName' = $vm.Name
'VM Status ' = $vm.Status
'IP addresse' = ($vm | Select-Object -ExpandProperty NetworkAdapters).ipaddresses
'Bytes Total/sec Ethernet' = $vm.computername
'Bytes Total/sec WiFi' = $vm.notes
}
}
/安德斯