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:
- Partick
- Kilmarnock
- Hamilton
- Dundee United
- Motherwell
- Dundee
- Inverness
- Ross County
- St Johnstone
- Srce
- Aberdeen
- Keltski
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:
- dovoljenja
- število vozlov
- uporabniško ime
- ime skupine
- velikost
- zadnji datum dostopa
- Ime datoteke
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.