Özet
uniq [-cdiu] [-D[septype]] [-f num] [-s chars] [input_file [output_file]]
Açıklama
uniq aracı, belirtilen input_file dosyasını ardışık satırları karşılaştırarak okur ve her bir benzersiz girdi satırının bir kopyasını output_file dosyasına yazar. input_file tek bir tire (‘-’) ise veya belirtilmemişse, standart girdiden okuma yapılır. output_file belirtilmemişse, çıktı için standart çıktı kullanılır. Özdeş ardışık girdi satırlarının ikinci ve sonraki kopyaları yazılmaz. Girdideki yinelenen satırlar ardışık değilse tespit edilmeyecektir, bu nedenle önce dosyaların sıralanması (sort) gerekebilir.
Aşağıdaki seçenekler mevcuttur:
-c, --count Her çıktı satırının başına, satırın girdide kaç kez geçtiğinin sayısını ve ardından tek bir boşluk ekler.
-d, --repeated Girdide yinelenen her satırın tek bir kopyasını çıktı olarak verir. -D seçeneği de belirtilmişse yoksayılır.
-D, --all-repeated [septype] Yinelenen tüm satırları çıktı olarak verir (-d seçeneği gibidir, ancak yinelenen satırın her kopyası yazılır). İsteğe bağlı septype argümanı, çıktıdaki yinelenen satır gruplarının nasıl ayrılacağını kontrol eder; aşağıdaki değerlerden biri olmalıdır:
none Satır gruplarını ayırmaz (varsayılan budur). prepend Her satır grubundan önce boş bir satır yazdırır. separate Her satır grubundan sonra boş bir satır yazdırır.
-f num, --skip-fields num Karşılaştırma yaparken her girdi satırındaki ilk num kadar alanı yoksayar. Bir alan, boşluklarla ardışık alanlardan ayrılmış boşluk olmayan karakterler dizisidir. Alan numaraları bir tabanlıdır, yani ilk alan birinci alandır.
-i, --ignore-case Satırların büyük/küçük harfe duyarsız şekilde karşılaştırılmasını sağlar.
-s chars, --skip-chars chars Karşılaştırma yaparken her girdi satırındaki ilk chars kadar karakteri yoksayar. -f seçeneği ile birlikte belirtilirse, ilk num kadar alandan sonraki ilk chars kadar karakter yoksayılır. Karakter numaraları bir tabanlıdır, yani ilk karakter birinci karakterdir.
-u, --unique Yalnızca girdide yinelenmeyen satırları çıktı olarak verir.
Çevre
LANG, LC_ALL, LC_COLLATE ve LC_CTYPE çevre değişkenleri uniq komutunun yürütülmesini environ(7) sayfasında açıklandığı gibi etkiler.
Çıkış Durumu
uniq aracı başarı durumunda 0, bir hata oluştuğunda ise >0 değeriyle çıkar.
Örnekler
Aşağıdaki içeriğe sahip cities.txt adında bir dosya olduğunu varsayalım:
Madrid
Lisbon
Madrid
Özdeş öğeler ardışık olmadığından aşağıdaki komut üç farklı satır rapor eder:
$ uniq -u cities.txt
Madrid
Lisbon
Madrid
Dosyayı sıralayın ve özdeş satırların sayısını sayın:
$ sort cities.txt | uniq -c
1 Lisbon
2 Madrid
cities.txt dosyasının aşağıdaki içeriğe sahip olduğunu varsayalım:
madrid
Madrid
Lisbon
Büyük/küçük harf duyarlılığını yoksayarak yinelenen satırları gösterin:
$ uniq -d -i cities.txt
madrid
Yukarıdakiyle aynıdır ancak yinelenen satırların tüm grubunu gösterir:
$ uniq -D -i cities.txt
madrid
Madrid
Her satırın ilk karakterini yoksayarak özdeş satırların sayısını rapor edin:
$ uniq -s 1 -c cities.txt
2 madrid
1 Lisbon
Uyumluluk
Eski +number ve -number seçenekleri artık kullanılmamaktadır (deprecated) ancak bu uygulamada hala desteklenmektedir.
Ayrıca Bkz.
sort(1)
Standartlar
uniq aracı, Cor. 1-2002 ile değiştirildiği şekliyle IEEE Std 1003.1-2001 (“POSIX.1”) standardına uygundur.
Tarihçe
Bir uniq komutu ilk olarak Version 3 AT&T UNIX sürümünde yer almıştır.
macOS 26.4 9 Aralık 2024 macOS 26.4