Kako razvrščati podatke v datoteko z uporabo Linuxa

Uvod

V tem priročniku vam pokažem, kako razvrstiti podatke v ločenih datotekah in iz drugih ukazov.

Ne boste presenečeni, če boste izvedeli, da je ukaz, ki ga uporabljate za opravljanje te naloge, imenovan "sortiraj". V tem članku bodo navedena vsa glavna stikala ukaza sortiranja.

Sample Data

Podatke v datoteki lahko razvrstimo, dokler je na kakšen način omejen.

Na primer, lani vzamemo končno tabelo lige iz škotske premier lige in shranimo podatke v datoteko z imenom spl.

Podatkovno datoteko lahko ustvarite z enim klubom in podatki za ta klub, ločeni z vejicami v vsaki vrstici.

Ekipa Cilji zadetkov Cilji proti Točke
Keltski 93 31 86
Aberdeen 62 48 71
Srce 59 40 65
St Johnstone 58 55 56
Motherwell 47 63 50
Ross County 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

Kako razvrščati podatke v datoteke

Iz te mize lahko vidite, da je Celtic osvojil ligo in Dundee United prišel zadnji. Če ste fan navijačev Dundee United, boste morda želeli, da se boste počutili bolje in to lahko storite z razvrščanjem zadetkov.

V ta namen zaženite naslednji ukaz:

sortiraj -k2 -t, spl

Tokrat bi bil nalog naslednji:

Razlog za to, da so rezultati v tem vrstnem redu, je, da je v stolpcu 2 stolpec, ki ga je dosegel cilj, in sorta od najnižje do najvišje.

Stikalo -k vam omogoča, da izberete stolpec, ki ga želite razvrstiti, in -t stikalo pa vam omogoča, da izberete razmejitev.

Da bi bili resnično zadovoljni, lahko navijači Dundee United sortirajo po stolpcu 4 z naslednjim ukazom:

sortiraj -k4 -t, spl

Zdaj so Dundee United na vrhu in Celtic so na dnu.

Seveda bi to tako oboževalce Celtica in Dundeja resnično nesrečno. Če želite stvari urediti pravilno, jih lahko razvrščate v obratnem vrstnem redu s pomočjo naslednjega stikala:

razvrstite -k4 -t, -r spl

Precej bizarno stikalo vam omogoča naključno razvrščanje, ki v resnici preplaha vrstice podatkov.

To lahko naredite z naslednjim ukazom:

razvrstite -k4 -t, -R spl

To lahko povzroči resne težave, če ste pomešali -r in vaše -R stikalo.

Ukaz sort lahko tudi razvrsti datume v mesečni vrstni red. Za prikaz pogleda v naslednjo tabelo:

Mesec Uporabljeni podatki
Januar 4G
Februar 3000K
Marec 6000K
April 100M
Maj 5000M
Junij 200K
Julij 4000K
Avgusta 2500K
September 3000K
Oktober 1000K
November 3G
December 2G

Zgornja tabela predstavlja mesec v letu in količino podatkov, ki se uporabljajo na mobilni napravi.

Datume lahko po abecedi razvrstite po naslednjem ukazu:

razvrstite -k1 -t, datausedlist

Lahko tudi razvrstite po mesecu z naslednjim ukazom:

razvrstite -k1 -t, -M podatkovni seznam

Zdaj je očitno, da zgornja tabela že prikazuje v mesečnem vrstnem redu, če pa je bil seznam naključno poseljen, bi bilo to preprost način razvrščanja.

Če pogledamo drugem stolpcu, lahko vidite, da so vse vrednosti v človeški berljivi obliki, ki ne izgleda tako enostavno razvrstiti, vendar ukazni ukaz lahko razvrsti uporabljeni stolpec z uporabo naslednjega ukaza:

razvrstite -k2 -t, -h podatkovni seznam

Kako razvrščati podatke iz drugih ukazov

Medtem ko je sortiranje podatkov v datotekah uporabno, lahko ukazni ukaz tudi uporabite za razvrstitev iz drugih ukazov:

Na primer pogledajte ukaz ls :

Je -lt

Zgornji ukaz vrne vsako datoteko kot vrstico podatkov z naslednjimi polji, prikazanimi v stolpcih:

Seznam lahko razvrstite glede na velikost datoteke z zagonom naslednjega ukaza:

ls -lt | razvrstite -k5

Če želite rezultate dobiti v obratnem vrstnem redu, uporabite naslednji ukaz:

ls -lt | razvrstite -k5 -r

Ukaz sort je mogoče uporabiti tudi v povezavi z ukazom ps, ki navaja procese, ki se izvajajo v vašem sistemu.

Na primer, zaženite naslednji ukaz ps na vašem sistemu:

ps-eF

Zgornji ukaz vrne veliko informacij o procesih, ki se trenutno izvajajo v vašem sistemu.

Eden od teh stolpcev je velikost in morda boste želeli videti, kateri procesi so največji.

Če želite te podatke razvrstiti po velikosti, uporabite naslednji ukaz:

ps-eF | razvrstite -k5

Povzetek

Ni ukaza ukaza za razvrščanje, vendar lahko postane uporaben zelo hitro, ko razvrščate izhod iz drugih ukazov v smiselni naročilo, še posebej, če ukaz nima lastnih vrstnih stikal.

Za več informacij preberite priročnik strani za ukaz sort.