【发布时间】:2014-04-12 12:12:04
【问题描述】:
刚刚安装了 PowerShell Studio,我正在尝试在富文本框中查看一些 VMware 命令的结果。
例如,当我运行get-vm 时,它显示的数据很好(我将字体更改为 Lucida Console- 看起来还不错),常规的get-vm 结果显示在富文本框中:
Name : xxx
Cluster : xxx
ESX Host : esx6
Datastore : xxx
MemoryGB : 8
NumCpu : 2
ProvisionedSpace(GB) : 282
UsedSpace(GB) : 281
OS : Microsoft Windows Server 2008 R2 (64-bit)
但是当我尝试运行 (get-vm).Guest.Disks 时,richtextbox 中的数据显示不好,它看起来像这样:
Capacity:192515403776,
FreeSpace:43895230464,
Path:E:\
Capacity:75053920256,
FreeSpace:12630409216,
Path:C:\
当在常规的 powershell 控制台中运行它时,它看起来应该是这样的:
Volume Capacity(GB) FreeSpace(GB) % FreeSpace
------ ------------ ------------- -----------
E:\ 120 13 11
C:\ 120 15 12
PowerShell 中的命令行是:
((Get-VM $vm).Guest.disks) | Format-Table @{N="Volume";E={$_.Path}},
@{N="Capacity(GB)";E={[System.Math]::Round($_.CapacityGB)};a="left"},
@{N="FreeSpace(GB)";E={[System.Math]::Round($_.FreeSpaceGB)};a="left"},
@{N="% FreeSpace";E={[math]::Round((100 * ($_.FreeSpacegb / $_.Capacitygb)),0)};a="left"} -auto |
Out-String
富文本框中的命令行是:
$richtextbox1.AppendText((Get-VM $text).Guest.disks) |
Format-Table @{N="Volume";E={$_.Path}},
@{N="Capacity(GB)";E={[System.Math]::Round($_.CapacityGB)};a="left"},
@{N="FreeSpace(GB)";E={[System.Math]::Round($_.FreeSpaceGB)};a="left"},
@{N="% FreeSpace";E={[math]::Round((100 * ($_.FreeSpacegb / $_.Capacitygb)),0)};a="left"} -auto |
Out-String
无论是使用 Richtextbox 还是任何其他控件,我如何才能获得与 PowerShell 控制台中的结果一样的结果?
【问题讨论】:
-
为什么不使用 ListView 或 ListBox?
标签: winforms powershell richtextbox powershell-studio