排序对象不起作用

Sort object not working

有谁知道为什么 Sort-Object 在此代码中不起作用?

gwmi win32_computersystem -comp $Computer.FullDomainName -ErrorAction SilentlyContinue |
    select Caption,Username | Sort Caption

我将扩展@Kage 的评论并猜测答案。

gwmi win32_computersystem -comp $Computer.FullDomainName -ErrorAction SilentlyContinue |
select Caption,Username | Sort Caption

此查询正在获取单台计算机的标题,因此当您对其进行排序时没有任何反应。 "laptop244" | sort 什么都不做。我猜你的代码看起来(大致)像这样:

foreach ($Computer in (Get-AdComputer -Filter *))
{
  gwmi win32_computersystem -comp $Computer.FullDomainName -ErrorAction SilentlyContinue |
  select Caption,Username | Sort Caption
}

但它需要看起来像这样:

# Loop over the computers and gather all the results into one array

$ComputerDetails = foreach ($Computer in (Get-AdComputer -Filter *))
{
  gwmi win32_computersystem -comp $Computer.FullDomainName -ErrorAction SilentlyContinue |
  select Caption,Username
}

# Sort all the details in that array in one go
$ComputerDetails | Sort Caption