Get-Unique

Sıralanmış bir listeden benzersiz öğeler döndürür.

Syntax

Get-Unique
   [-InputObject <PSObject>]
   [-AsString]
   [<CommonParameters>]
Get-Unique
   [-InputObject <PSObject>]
   [-OnType]
   [<CommonParameters>]

Description

Cmdlet, Get-Unique sıralanmış listedeki her öğeyi bir sonraki öğeyle karşılaştırır, yinelenenleri ortadan kaldırır ve her öğenin yalnızca bir örneğini döndürür. Cmdlet'in düzgün çalışması için liste sıralanmalıdır.

Get-Unique büyük/küçük harfe duyarlıdır. Sonuç olarak, yalnızca karakter büyük/küçük harfe göre farklılık gösteren dizeler benzersiz olarak kabul edilir.

Örnekler

Örnek 1: Metin dosyasında benzersiz sözcükler alma

Bu komutlar, bir metin dosyasındaki benzersiz sözcüklerin sayısını bulur.

$A = $( foreach ($line in Get-Content C:\Test1\File1.txt) {
    $line.tolower().split(" ")
  }) | Sort-Object | Get-Unique
$A.count

İlk komut dosyanın içeriğini File.txt alır. Her metin satırını küçük harflere dönüştürür ve sonra her sözcüğü boşlukta (" " ) ayrı bir satıra böler. Ardından, sonuçta elde edilen listeyi alfabetik olarak (varsayılan) sıralar ve yinelenen sözcükleri ortadan kaldırmak için cmdlet'ini kullanır Get-Unique . Sonuçlar değişkeninde $A depolanır.

İkinci komut, içinde kaç öğe $Aolduğunu belirlemek için içindeki $A dize koleksiyonunun Count özelliğini kullanır.

Örnek 2: Dizide benzersiz tamsayılar alma

Bu komut, tamsayı kümesinin benzersiz üyelerini bulur.

1,1,1,1,12,23,4,5,4643,5,3,3,3,3,3,3,3 | Sort-Object | Get-Unique

1
3
4
5
12
23
4643

İlk komut, komut satırına yazılan bir tamsayı dizisini alır, sıralanacak Sort-Object cmdlet'e aktarır ve sonra yinelenen girdileri ortadan kaldıran cmdlet'e Get-Uniqueaktarır.

Örnek 3: Dizinde benzersiz nesne türlerini alma

Bu komut, dosyaları ve dizinleri içeren yerel dizinin içeriğini almak için cmdlet'ini kullanır Get-ChildItem .

Get-ChildItem | Sort-Object {$_.GetType()} | Get-Unique -OnType

İşlem hattı işleci (|), sonuçları cmdlet'ine Sort-Object gönderir. deyimi $_.GetType() her dosyaya veya dizine GetType yöntemini uygular. Ardından öğeleri Sort-Object türe göre sıralar. Başka bir işlem hattı işleci sonuçları adresine Get-Uniquegönderir. OnType parametresi, her türden yalnızca bir nesne döndürmeye yönlendirirGet-Unique.

Örnek 4: Benzersiz işlemler alma

Bu komut, yinelenenlerin ortadan kaldırıldığı bilgisayarda çalışan işlemlerin adlarını alır.

Get-Process | Sort-Object | Select-Object processname | Get-Unique -AsString

Get-Process komutu bilgisayardaki tüm işlemleri alır. İşlem hattı işleci (|), varsayılan olarak işlemleri ProcessName'e Sort-Objectgöre alfabetik olarak sıralayan sonucu öğesine geçirir. Sonuçlar, her nesnenin Select-Object yalnızca ProcessName özelliğinin değerlerini seçen cmdlet'ine yöneltilir. Ardından sonuçlar, yinelenenleri ortadan kaldırmak için öğesine Get-Unique yöneltilir.

AsString parametresi, ProcessName değerlerini dize olarak işlemesini söylerGet-Unique. Bu parametre olmadan ProcessName Get-Unique değerlerini nesne olarak değerlendirir ve nesnenin yalnızca bir örneğini, yani listedeki ilk işlem adını döndürür.

Parametreler

-AsString

Bu cmdlet'in verileri dize olarak kullandığını gösterir. Bu parametre olmadan veriler bir nesne olarak değerlendirilir, bu nedenle dosya koleksiyonu gibi aynı türde bir nesne koleksiyonunu 'a Get-Uniquegönderdiğinizde yalnızca bir (ilk) döndürür. Dosya adları gibi nesne özelliklerinin benzersiz değerlerini bulmak için bu parametreyi kullanabilirsiniz.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

için Get-Uniquegirişi belirtir. Nesneleri içeren bir değişken girin veya nesneleri alan bir komut veya ifade yazın.

Bu cmdlet, InputObject kullanılarak gönderilen girişi koleksiyon olarak değerlendirir. koleksiyondaki tek tek öğeleri listelemez. Koleksiyon tek bir öğe olduğundan InputObject kullanılarak gönderilen girişler her zaman değişmeden döndürülür.

Type:PSObject
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-OnType

Bu cmdlet'in her türden yalnızca bir nesne döndürdüğünü gösterir.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Girişler

PSObject

Herhangi bir nesne türünü bu cmdlet'e yöneltebilirsiniz.

Çıkışlar

PSObject

Bu cmdlet, giriş nesnelerini yineleme olmadan döndürür.

Notlar

PowerShell için aşağıdaki diğer adları Get-Uniqueiçerir:

  • Tüm platformlar:
    • gu

Daha fazla bilgi için bkz . about_Aliases.

Listeyi sıralamak için kullanın Sort-Object. Bir listedeki benzersiz öğeleri bulmak için benzersiz parametresini Sort-Object de kullanabilirsiniz.