Sadece awk komutunuzu, yinelenen satırları kaldırmak için gerçekleştirmek istediğiniz sütuna değiştirin (sizin durumunuz üçüncü durumda):
awk '!seen[$3]++' filename
Bu komut awkhangi satırların yazdırılacağını söylüyor . Değişken $3, sütun 3'ün tüm içeriğini tutar ve köşeli parantezler dizi erişimindedir. Bu nedenle, dosya adındaki her üçüncü satır sütunu için, dizinin düğümü seenartırılır ve söz konusu düğümün içeriği (sütun3 !) önceden ayarlanmamışsa , satır yazdırılır .
Üstteki awkkomut, giriş dosyasındaki sütunlarınız kendi aralarında spaceveya kendi Tabaralarında ayrılmışsa, sütunlar başka bir şeyle sınırlandırılmışsa, bu -Fseçeneğiyle birlikte kullanılmasını söylemeniz gerekir . Öyleyse, örneğin tüm sütunlar virgül ( ,) ile sınırlandırılmışsa ve üçüncü sütun kullanımındaki satır tabanını kaldırmak istiyorsa -F','.
awk -F',' '!seen[$3]++' filename
-uTek , yinelenen anahtarları değil yalnızca yinelenen satırları kaldıracak ... ama hatalıyım.