Obstaja veliko ukazov in orodij Linuxa, ki se uporabljajo za obdelavo besedilnih datotek. Toda včasih ne želite prebrati celotne vsebine datoteke, temveč njen določen del. Ali veste, da lahko uporabite ukaza head in tail v Linuxu za izpis začetkov oziroma koncev datoteke?

Nadaljujte z branjem in odkrijte, kako lahko uporabite ta dva ukaza za učinkovito obdelavo in obdelavo besedila v sistemu Linux.

Kaj je glavni ukaz?

Ukaz head se uporablja za tiskanje začetnih delov datoteke. Datoteke bere od začetka. Če imate datoteko, ki ima več kot tisoč vrstic, bi bilo odpiranje in branje zelo okorno. Z ukazom head lahko preprosto natisnete le nekaj vrstic od vrha.

Sintaksa ukaza head

Osnovna sintaksa ukaza head je:

glavo[možnost][mapa]

Na voljo je veliko možnosti za uporabo poleg ukaza head, o nekaterih bomo razpravljali kasneje. Za dobite pomoč v ukazni vrstici kar zadeva ukaz head, preverite njegovo priročno stran tako, da zaženete:

človekova glava

Kako uporabljati ukaz head

Za ta primer ustvarite datoteko:

instagram viewer
številke.txt. V datoteko z besedami naštejte številke od ena do 20. Uporabite lahko katero koli datoteko po svoji izbiri, vendar se prepričajte, da ima vsaj 11 vrstic.

Uporaba privzetega ukaza za glavo

Privzeto ukaz head natisne prvih 10 vrstic besedila v datoteki. Preizkusite z datoteko numbers.txt tako, da v terminalu izvedete ta ukaz:

glavoštevilke.txt

Natisnil bo prvih 10 vrstic datoteke:

eno
dva
tri
štiri
pet
šest
sedem
osem
devet
deset

Če ima datoteka manj kot 10 vrstic, bo ukaz head natisnil vse prisotne vrstice.

Natisnite prvih N vrstic

Z ukazom head lahko natisnete določeno število vrstic namesto privzetih 10. Če želite natisniti prve tri vrstice datoteke numbers.txt, izvedite ta ukaz:

glavo-n 3 številke.txt

Rezultat:

eno
dva
tri

Izključite zadnjih N vrstic z uporabo ukaza head

Tako kot lahko natisnete prve vrstice besedila, se lahko odločite, da boste pri tiskanju izključili zadnjih N vrstic. To lahko storite tako, da za parameter N uporabite negativno število.

Če želite izključiti zadnjih 15 vrstic datoteke numbers.txt, zaženite:

glavo-n-15številke.txt

Rezultat:

eno
dva
tri
štiri
pet

Natisnite prvih N znakov datoteke

Ukaz head ima tudi možnost tiskanja prvega števila znakov ali bajtov v datoteki. To lahko storite z uporabo -c možnost. Če želite natisniti prvih 10 znakov, uporabite:

glavo-c 10 številke.txt

Izhod:

eno
dva
th

Kaj je ukaz za rep?

Kot že ime pove, ukaz tail natisne zadnje vrstice datoteke. Datoteke prebere od konca in izpiše končne vrstice.

Sintaksa ukaza tail

Osnovna sintaksa ukaza tail je:

rep[možnost][mapa]

Za več informacij o ukazu tail preverite njegovo priročno stran z izdajo:

 moški rep

Kako uporabljati ukaz rep

Za naslednje primere bomo uporabili že ustvarjeno datoteko numbers.txt.

Uporaba privzetega ukaza tail

Ukaz tail izpiše zadnjih 10 vrstic datoteke, če se uporablja brez posebnih možnosti. Na primer:

repštevilke.txt

Izhod bo prikazal zadnjih 10 vrstic, kot je omenjeno:

enajst
dvanajst
trinajst
štirinajst
petnajst
šestnajst
sedemnajst
osemnajst
devetnajst
dvajset

Natisnite zadnjih N vrstic

V primeru, da ne želite natisniti zadnjih 10 vrstic, ampak določeno številko, lahko uporabite -n možnost, da to dosežete. Če želite natisniti zadnje štiri vrstice datoteke numbers.txt, izvedite ta ukaz:

rep-n 4 številke.txt

Rezultat:

sedemnajst
osemnajst
devetnajst
dvajset

Natisnite vrstice za določeno vrstico

Če želite začeti z določeno vrstico N, lahko uporabite -n možnost poleg pozitivnega števila, da to dosežete. Če želite natisniti izpis datoteke numbers.txt iz 17. vrstice, izvedite ta ukaz:

rep-n +17 številke.txt

Rezultat:

sedemnajst
osemnajst
devetnajst
dvajset

Natisnite zadnjih N znakov datoteke

Tako kot pri ukazu head lahko natisnete zadnjih nekaj znakov v datoteki z uporabo -c možnost. Če želite natisniti zadnjih 10 znakov datoteke numbers.txt, izvedite ta ukaz:

rep-c 10 številke.txt

Rezultat:

en
dvajset

Uporaba ukazov head in tail z več datotekami

Uporabite lahko tudi glavo in rep za tiskanje več kot ene datoteke hkrati. To je sintaksa za uporabo ukazov z več vhodnimi datotekami:

glavo[možnost][datoteka1][datoteka2]
rep[možnost][datoteka1][datoteka2]

Skupna uporaba ukazov za glavo in rep

Z uporabo simbola cevi lahko uporabite celo glavo in rep v istem ukazu. Simbol cevi preusmeri izhod enega ukaza kot vložek drugemu.

Na primer, da dobite šesto, sedmo in osmo vrstico, lahko izvedete ta ukaz:

glava -n 8 številk.txt | rep -n 3

Rezultat:

šest
sedem
osem

V zgoraj omenjeni enovrstičnici je ukaz head prikazal prvih osem vrstic datoteke, nato izhod je bil posredovan ukazu tail, ki je natisnil zadnje tri vrstice preusmerjenega izhod.

glava in rep: Koristni ukazi za obdelavo besedila

Linux ponuja veliko ukazov, ki vam pomagajo učinkovito manipulirati in obdelovati besedilne datoteke, ukaza head in tail pa sta le dva od mnogih. Najpogostejši ukazi za obdelavo besedila vključujejo grep, uniq, sort, sed, awk itd. Vsak od njih izpolnjuje drugačen namen s svojim edinstvenim naborom funkcij.

Poleg glave in repa je uporabnikom Linuxa na voljo ogromno drugih ukazov za upravljanje besedila in datotek.