Get-Unique返回不正确的结果

时间:2016-05-24 17:41:25

标签: powershell

在此PowerShell命令中查找文件夹中文件的所有者

Get-ChildItem $dir -Recurse | foreach {Get-Acl $_.fullname | select owner} | Get-Unique -AsString

Get-Unique返回与之前的结果不同的每个结果,而不是检查整个列表。例如:

   domain\user1
   domain\user2
   domain\user1
   domain\user3
   domain\user1

它应该只返回其中一个。

1 个答案:

答案 0 :(得分:3)

来自Get-Help Get-Unique

  

Get-Unique cmdlet将排序列表中的每个项目与下一个项目进行比较,消除重复项,并仅返回每个项目的一个实例。 必须对列表进行排序才能使cmdlet正常工作。

要获得所需的结果,请在使用Sort-Object

之前通过Get-Unique管道列表
$list | sort | Get-Unique

此行为与Unix中的uniq命令相同。