我正在使用VMware PowerCLI来查询具有一定数量空闲空间的数据存储。查询可以返回任何内容,只有一个或多个。我觉得必须有一种更简单的方法来检查它是否是一个或多个。
$ds = get-datastore | where {$_.FreeSapceGB -gt 50} | Sort-Object FreeSpaceGB -descending
我知道要检查我是否得到了这个
的结果if ($ds)
我知道这会检查是否有多个
if ($ds.Count)
如果有多个,我想使用最自由空间的那个,所以我使用第一个
$ds[0]
但如果只有一个,$ ds [0]不起作用,我只需使用$ ds,这会导致重复编码过多。
我知道我可以用
来限制我的结果| Select -first 1
但不限制结果有更简单的方法吗?
答案 0 :(得分:1)
这应该这样做:
$ds = @(get-datastore | where {$_.FreeSapceGB -gt 50} | Sort-Object FreeSpaceGB -descending)
然后,只要$ ds.Count大于0,你就应该总是能够使用$ ds [0]。