0

我正在使用 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

但是在不限制结果的情况下,有没有更简单的方法可以做到这一点?

4

1 回答 1

1

这应该这样做:

$ds = @(get-datastore | where {$_.FreeSapceGB -gt 50} | Sort-Object FreeSpaceGB -descending)

然后,只要 $ds.Count 大于 0,您就应该始终能够使用 $ds[0]。

于 2013-05-08T17:21:20.113 回答