Mustand: sisu ei ole veel tehniliselt ega keeleliselt täielikult kontrollitud ega toimetatud.

Peatüki vaade

Linux/Unix/macOS käsurea kiirõpik

Praegu loed peatükki Teksti vaatamine ja liikumine, mis kuulub osasse Osa I: Esimesed sammud.

Teksti vaatamine ja liikumine

Loogika

Faili vaatamiseks vali käsk selle järgi, kui palju sisu tahad korraga näha:

  • lühikese faili jaoks kasuta cat
  • pika faili sirvimiseks ja otsimiseks kasuta less
  • faili alguse vaatamiseks kasuta head
  • faili lõpu või värskeimate logiridade vaatamiseks kasuta tail

cat trükib kogu faili kohe terminali. Kui fail on pikk, täidab see ekraani paljude ridadega ja varasem osa jääb terminali kerimisajalukku. Sellisel juhul on less parem, sest saad faili sees rahulikult liikuda, otsida ja q-ga väljuda.

Kiirülevaade

Eesmärk on valida vaatamiseks tööriist, mis ei uputa ekraani üle ega muuda faili.

KäskMilleksMida tavaliselt näed
cat failtrüki kogu fail väljapikk fail võib kiiresti mööda joosta
less faillehitse ja otsi mugavalteraldi lehitsetav vaade
head failvaata algustlühike väljavõte algusest
tail failvaata lõppulühike väljavõte lõpust
tail -f failjälgi lõppu reaalajaskäsk jääb uusi ridu ootama

Tüüpilised algaja vead

  • kasutatakse cat-i väga pika faili peal, kuigi less oleks parem
  • unustatakse, et less-ist tuleb q-ga välja tulla
  • aetakse segi “vaatan faili lõppu” ja “jälgin faili muutumist”

Kiirspikker

  • cat fail.txt kuvab faili tervikuna
  • less fail.txt avab faili mugavaks sirvimiseks
  • head fail.txt näitab algust
  • tail fail.txt näitab lõppu
  • tail -f logi.txt jälgib faili muutumist
  • less sees /muster otsib teksti
  • less sees 78g läheb reale 78
  • less sees 25% või 25p läheb umbes veerandi peale faili sisse

Kõige tavalisemad valikud:

  • head -n 20 näita esimesed 20 rida
  • tail -n 20 näita viimased 20 rida
  • tail -f jälgi faili juurde lisanduvat sisu

Käivita need käsud


seq 25 > numbrid.txt
head -n 7 numbrid.txt
tail -n 7 numbrid.txt

less numbrid.txt

less sees:

  • q väljub
  • /tekst otsib edasi
  • n liigub järgmise vaste juurde
  • g läheb faili algusse
  • G läheb faili lõppu
  • 78g läheb reale 78
  • 25% või 25p liigub 25% peale faili sisse

less sees saab hüpata rea või protsendi järgi

See aitab siis, kui fail on pikk ja tahad kerimise asemel minna kohe kindlasse kohta.

Näiteks:


seq 200 > numbrid.txt
less numbrid.txt

less sees võid kirjutada:

  • 78g, et minna reale 78
  • 25%, et minna umbes veerandi peale faili sisse
  • 50%, et minna faili keskele
  • G, et minna faili lõppu

Loogika on:

  • rea number + g tähendab "mine sellele reale"
  • protsent + % või p tähendab "mine selle koha peale failis"

See on eriti kasulik logide, konfiguratsioonifailide ja suurte andmefailide puhul.

Millal mida kasutada

  • cat lühikese faili jaoks
  • less pika faili või logi jaoks
  • head ja tail siis, kui fail on piisavalt pikk, et terve sisu korraga ei oleks mõistlik vaadata

Kõige sagedasem päriselu muster on:


tail -f app.log

või:


less /etc/passwd

tail -f logide vaatamiseks

tail -f on eraldi oluline juhtum, sest siin ei vaata sa ainult faili lõppu, vaid jälgid faili kasvu reaalajas.

See on seotud logide, serverite ja taustaprotsessidega:

  • programm lisab faili uusi ridu
  • tail -f näitab neid ridu kohe, kui need faili jõuavad
  • vaatamine kestab seni, kuni selle katkestad

Kõige tavalisem kasutus on:


tail -f app.log

Peata jälgimine:


Ctrl-c

Praktiline harjutus on teha kaks terminaliakent:

Esimeses aknas:


touch app.log
tail -f app.log

Teises aknas:


printf 'server käivitus\n' >> app.log
printf 'viga: ühendus katkes\n' >> app.log

Siis näed kohe, kuidas tail -f sobib logide vaatamiseks paremini kui tavaline cat või ühekordne tail -n 20.

Minitest

  1. Loo 25-realine fail seq 25 > numbrid.txt.
  2. Vaata esimesed 7 rida käsuga head -n 7 numbrid.txt.
  3. Vaata viimased 7 rida käsuga tail -n 7 numbrid.txt.
  4. Ava fail less abil ja otsi üles number 17.
  5. Ava pikem fail seq 200 > numbrid.txt, sisene less-i ja proovi käske 78g ning 25%.
  6. Proovi logi jälgimist käsuga tail -f app.log ja lisa teises terminalis faili paar rida juurde.

Peatüki täisspikker

Algaja

Eesmärk

lühikese faili jaoks kasuta cat; pika faili sirvimiseks ja otsimiseks kasuta less; faili alguse vaatamiseks kasuta head

Põhikujud

  • less fail.txtava lehitseja
  • head -n 7 fail.txtesimesed read
  • tail -n 7 fail.txtviimased read
  • tail -f app.logjälgi logi
  • less *mitu faili korraga
  • catnäita faili
  • seqnumbrijada
  • touchloo või aja tempel

`less`-i klahvid

  • qvälju
  • /tekstotsi edasi
  • njärgmine vaste
  • Neelmine vaste
  • vava redaktoris
  • :n / :pjärgmine/eelmine fail