Kuidas sortida andmeid failis Linuxi abil

Sissejuhatus

Selles juhendis näitan sulle, kuidas sortida andmeid piiritletud failides ja teiste käskude väljundist.

Te ei ole üllatunud, et õpiksite, et selle ülesande täitmiseks käsku nimetatakse "sorteerimiseks". Selles artiklis esitatakse kõik suuremad käskude peamised lülitid.

Näidisandmed

Faili andmeid saab sortida seni, kuni see on mõnel viisil piiritletud.

Näiteks võime eelmisel aastal Scottish Premier League viimasest liiga tabelisse koguda ja salvestada andmeid failis "spl".

Te saate luua ühe andmefaili ühe klubiga ja selle klubi andmed eraldatakse iga rea ​​komadega.

Meeskond Eesmärgid Eesmärgid vastu Punktid
Celtic 93 31 86
Aberdeen 62 48 71
Südamed 59 40 65
St Johnstone 58 55 56
Emakeel 47 63 50
Rossi maakond 55 61 48
Inverness 54 48 52
Dundee 53 57 48
Partick 41 50 46
Hamilton 42 63 43
Kilmarnock 41 64 36
Dundee United 45 70 28

Kuidas andmeid failides sortida

Sellest tabelist näete, et Celtic võitis liiga ja Dundee United tuli viimati. Kui olete Dundee United'i fänn, võiksite end ennast paremini tunda ja sa võiksid seda teha, sorteerides võistlevaid eesmärke.

Selleks käivitage järgmine käsk:

sorteeri -k2-t, spl

Seekord järgmine kord:

Selles järjekorras on tulemuseks see, et 2. veerus on eesmärgid, mille tulemuseks on veerg ja sort läheb madalaimast kõrgeimini.

-k-klahv võimaldab valida veeru sorteerimiseks ja -t-lüliti abil saate valida eraldajat.

Dundee United'i fännid saavad tõeliselt õnnelikuks teha 4. veeru järgi, kasutades järgmist käsku:

sorteeri -k4-t, spl

Nüüd on Dundee United üles ja Celtic on allosas.

Muidugi muudaks see nii keldi ja Dundee'i fännid tõesti õnnelikuks. Asja õigeks panemiseks saate sortida vastupidises järjekorras, kasutades järgmist lülitit:

sorteeri -k4 -t, -r spl

Üsna veider lüliti võimaldab teil juhuslikult sorteerida, mis lihtsalt tõmbab andmete ridu.

Seda saab teha järgmise käsuga:

sorteeri -k4 -t, -R spl

See võib põhjustada tõelisi probleeme, kui segadate oma-r ja teie-R-lüliti.

Sortimiskäsk võib ka sortida kuupäevad kuu järjekorras. Järgmise tabeli vaatamiseks näete järgmist.

Kuu Kasutatud andmed
Jaanuar 4G
Veebruar 3000K
Märts 6000K
Aprill 100M
Mai 5000M
Juuni 200K
Juuli 4000K
august 2500K
September 3000K
Oktoober 1000K
November 3G
Detsember 2G

Eespool olev tabel näitab aasta kuu ja mobiilseadmes kasutatud andmete hulka.

Saate kuupäevad tähestikuliselt sortida, kasutades järgmist käsku:

sorteeri -k1 -t, datausedlist

Samuti saate sortida kuu kaupa, kasutades järgmist käsku:

sorteeri -k1 -t, -M datausedlist

Nüüd näib ilmselgelt, et ülaltoodud tabel näitab neid juba kuude järjekorras, kuid kui loend oli juhuslikult asustatud, oleks see lihtne nende sorteerimine.

Teise veeru vaatamisel näete, et kõik väärtused on inimese loetavas vormingus, mis ei tundu olevat lihtne sorteerida, kuid sortimiskäsk võib kasutada andmeid kasutatud veergu, kasutades järgmist käsku:

sorteeri -k2 -t, -h datausedlist

Kuidas teistelt käsklustelt saadud andmeid sortida

Kuigi andmete sortimine failides on kasulik, saab ka sortimiskäsku kasutada teiste käskude väljundi sortimiseks:

Näiteks vaata ls käsku :

ls -lt

Eelnimetatud käsk tagastab iga faili andmete rida järgmiste väljade veergudes:

Loendi saab failide suuruse järgi sortida, käivitades järgmise käsu:

ls -lt | sorteeri -k5

Tulemuste saamiseks vastupidises järjekorras kasutaksite järgmist käsku:

ls -lt | sorteeri -k5 -r

Sortimiskäsku saab kasutada ka koos käsuga ps, mis loetleb teie süsteemis töötavaid protsesse.

Näiteks käivitage oma süsteemis järgmine käsk ps:

ps-eF

Eelnimetatud käsk tagastab palju teavet teie süsteemis käitatavate protsesside kohta.

Üks nendest veergudest on suurus ja võite näha, millised protsessid on suurimad.

Selle suuruse järgi sorteerimiseks kasutaksite järgmist käsku:

ps-eF | sorteeri -k5

Kokkuvõte

Sellist käsku ei ole palju, kuid see võib osutuda kasulikuks väga kiiresti, kui sorteerida teiste käskude väljundit sisukasse järjekorda, eriti kui käskil pole oma sorteeritud võtmeid.

Lisateabe saamiseks lugege sorteerimise käsku käsitsi lehekülgi.