Linux parancsok

Linux uniq parancs

Linux uniq parancs
Mi az „uniq”? Ez egy remek parancssori eszköz, amely jelentést készít vagy elhagy minden duplikált szöveget az adott bemenetben. Ez a GNU coreutils része, így minden UNIX / Linux rendszeren elérhető. Kezdjük az „uniq” használatával!

Uniq használat

Így néz ki az „uniq” parancsok alapstruktúrája.

uniq

Nézzük meg például a „duplicate.txt ”. Természetesen sok másolatos szöveges tartalmat tartalmaz a cikk céljaira.

macskamásolat.txt | fajta

Világosan vannak duplikált tartalmak, ugye? Szűrjük át őket az „uniq” -on keresztül.

macska másolat | rendezés | uniq

A kimenet jobbnak tűnik, csak az egyedi értékekkel, ugye?

A munka elvégzéséhez azonban egyszerűen nem kell használni a csövezési módszert. Az „uniq” közvetlenül működhet a fájlokon is.

uniq

Ismétlődő tartalom törlése

Igen, az ismétlődő tartalom törlése a bemenetről és csak az első előfordulás megtartása az „uniq” alapértelmezett viselkedése. Vegye figyelembe, hogy ez az ismétlődő törlés csak akkor fordul elő, ha az „uniq” egyidejű párhuzamos elemeket talál.

Nézzük meg ezt a példát. Létrehoztam egy másik “duplicate1.txt ”fájl, amely duplikált elemeket tartalmaz. Azonban nem szomszédosak egymással.

denevér másodpéldánya1.txt

Most szűrje le ezt a kimenetet az „uniq” használatával.

macska másolat1.txt | uniq

Minden másolat megvan! Éppen ezért, ha ehhez hasonlóval dolgozik, a tartalmat „rendezés” útján vezesse be, hogy megbizonyosodjon arról, hogy az összes tartalom rendezve van, és a másolatok szomszédosak-e egymással.

macska másolat1.txt | fajta

Most az „uniq” rendesen elvégzi a dolgát.

macska másolat1.txt | rendezés | uniq

Ismétlések száma

Ha szeretné, megnézheti, hogy egy sor hányszor ismétlődik a tartalomban. Csak használja a „-c” jelzőt az „uniq” jelöléssel.

macskamásolat.txt | rendezés | uniq -c

Megjegyzés: Az „uniq” rendszeresen elvégzi a másolatok törlését is.

Ismétlődő sorok nyomtatása

Legtöbbször meg akarunk szabadulni a másolatoktól, ugye? Ezúttal mi lenne, ha csak megnéznéd, hogy mi másol?

Igen, az „uniq” is képes erre. Ebben az esetben a „-D” opciót kell használnia. A "rendezés" -et közte használom, hogy jobb és kifinomultabb eredményt érhessek el.

macskamásolat.txt | rendezés | uniq -D

AZTA! Ez egy csomó másolat! Azonban az összes másolat össze van gyűjtve, ami megnehezíti az áttekintést. Mit szólnál hozzá, ha egy kis rés lenne a kettő között?

uniq - mindannyian ismétlődnek =

Itt 3 különböző módszer áll rendelkezésre: egyik sem (alapértelmezett érték), előre és külön.

macskamásolat.txt | rendezés | uniq - mindannyian ismétlődnek = függenek

macskamásolat.txt | rendezés | uniq - minden ismétlődik = külön

Most jobban néz ki.

Az egyediség ellenőrzésének kihagyása

Sok esetben az egyediséget a vonal egy másik részének kell ellenőriznie.

Értsük meg ezt példával. A fájl másolatában1.txt, tegyük fel, hogy a duplikációt a második rész határozza meg. Hogyan mondhatja az „uniq” -t erre? Általában ellenőrzi az első mezőt (alapértelmezés szerint). Nos, mi is megtehetjük. Ez a „-f” jelző csak a munka elvégzésére szolgál.

uniq -f
macska másolat1.txt | sort -k 2 | uniq -f 1

Ha a „rendezés” jelzővel kíváncsiak, akkor azt mondja, hogy a „rendezés” rendezés a második oszlop alapján történik.

Az összes sor megjelenítése, külön kettős példány nélkül

A fent említett összes példa szerint az „uniq” csak a megismételt tartalom első előfordulását tartja fenn, a többit pedig eltávolítja. Mit szólnál ahhoz, ha teljesen eltávolítanád az ismétlődő tartalmat? Igen, az „-u” jelző használatával arra kényszeríthetjük az „uniq” -t, hogy csak a nem ismétlődő vonalak maradjanak meg.

macskamásolat.txt | fajta

macskamásolat.txt | rendezés | uniq -u

Hmm, túl sok másolat ment el ..

A kezdő karakterek kihagyása

Megbeszéltük, hogyan lehet elmondani az „uniq-nak”, hogy más területeken végezze el a munkáját, ugye? Itt az ideje elkezdeni az ellenőrzést számos kezdő karakter után. Ebből a célból az „-s” jelző a karakterek számával együtt azt fogja mondani az „uniq” -nak, hogy végezze el a munkát.

macska másolat1.txt | sort -k 2 | uniq -s 2

Hasonló ahhoz a példához, ahol az „uniq” csak a második mezőben végezte feladatát. Lássunk egy másik példát ezzel a trükkel.

macskamásolat.txt | rendezés | uniq -s 5

CSAK a kezdő karaktereket ellenőrizze

Csakúgy, ahogy azt mondtuk az „uniq” -nak, hogy hagyja ki az első pár karaktert, azt is meg lehet mondani az „uniq” -nek, hogy csak korlátozza az első pár karakteren belüli ellenőrzést. Erre a célra dedikált „-w” zászló található.

macskamásolat.txt | rendezés | uniq -w 5

Ez a parancs megadja az „uniq” -nak, hogy végezzen egyediség-ellenőrzést az első 5 karakteren belül.

Lássunk ennek a parancsnak egy másik példáját.

macska másolat1.txt | rendezés | uniq -w 5

Törli az összes más példányt a „duplikált” bejegyzésekből, mert elvégezte a „dupli” rész egyediségét.

Esetérzékenység

Az egyediség ellenőrzésekor az „uniq” a karakterek esetét is ellenőrzi. Bizonyos helyzetekben a kis- és nagybetűk érzékenysége nem számít, ezért használhatjuk az „-i” jelzőt az „uniq” kisbetű érzéketlenné tételéhez.

Itt bemutatom neked a bemutató fájlt.

Néhány okos sokszorosítás nagy- és kisbetűk keverékével, ugye? Itt az ideje felhívni az „uniq” erejét a rendetlenség tisztítására!

macska másolat1.txt | rendezés | uniq -i

Kívánság teljesítve!

NULL végződésű kimenet

Az „uniq” alapértelmezett viselkedése az, hogy a kimenetet új sorral zárja. A kimenet azonban NULL-szel is megszüntethető. Ez nagyon hasznos, ha szkriptekben fogja használni. Itt a „-z” jelző végzi a munkát.

macskamásolat.txt | rendezés | uniq -z

Több zászló kombinálása

Megtanultunk számos „uniq” zászlót, ugye? Mit szólnál ahhoz, ha kombinálnád őket?

Például egyesítem az eset érzéketlenséget és az ismétlés számát.

Ha valaha is több zászló keverését tervezi, először győződjön meg arról, hogy a megfelelő módon működnek együtt. Néha a dolgok egyszerűen nem úgy működnek, ahogy kellene.

Végső gondolatok

Az „uniq” a Linux egyedülálló eszköze. Ennyi erőteljes funkcióval rengeteg szempontból hasznos lehet. Az összes zászló és magyarázatuk felsorolásához keresse meg az “uniq” kézikönyvét és információs oldalait.

férfi uniq

info uniq

Élvezd!

Telepítse a legújabb OpenRA stratégiai játékot az Ubuntu Linux rendszerre
Az OpenRA egy ingyenes / ingyenes valós idejű stratégiai játékmotor, amely újjáépíti a korai Westwood játékokat, mint például a klasszikus Command & C...
Telepítse a legújabb Dolphin Emulator for Gamecube & Wii szoftvert Linuxra
A Dolphin Emulator segítségével a kiválasztott Gamecube & Wii játékokat játszhatja Linux személyi számítógépeken (PC). Mivel a Dolphin Emulator szaba...
A GameConqueror Cheat Engine használata Linux alatt
A cikk tartalmaz egy útmutatót a GameConqueror csaló motor Linux alatt történő használatáról. Sok olyan felhasználó, aki Windows-on játszik játékot, g...