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 $A
olduğ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-Unique
aktarı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-Unique
gö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-Object
gö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-Unique
gö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-Unique
giriş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
Herhangi bir nesne türünü bu cmdlet'e yöneltebilirsiniz.
Çıkışlar
Bu cmdlet, giriş nesnelerini yineleme olmadan döndürür.
Notlar
PowerShell için aşağıdaki diğer adları Get-Unique
iç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.
İlişkili Bağlantılar
PowerShell
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin