Võib-olla teate ajaloo käsu põhikasutust, kuid see võib teha palju muud. Bashi ajalugu salvestatakse tavaliselt faili ~ /.bash_history. See võimaldab teil salvestatud kirjet tõhusalt välja kutsuda ja uuesti kasutada, et bashi ajaloo salvestamise funktsioonist parimat kasu saada. Mitte ainult seda, vaid saate ka bashi käskude väljundit soovitud viisil kohandada ja juhtida.
Selles artiklis selgitame, kuidas bashi käsulugu tõhusalt kasutada ja kohandada, et selle funktsioonidest maksimumi võtta.
Selles artiklis mainitud käskude ja protseduuride käitamiseks oleme kasutanud Debian 10.
Bashi käsuloo kasutamine
1. Bashi ajaloo vaatamine
Shelli käskude kogu ajaloo kuvamiseks võite terminalis käivitada järgmise käsu:
$ ajaluguSee loetleb kogu konkreetse kasutaja ajaloo spetsiaalselt selle kasutaja jaoks salvestatud ajaloofailist. Näete kõiki käske, mis algavad neile eraldatud numbriga. See loetleb vanemad käsud ülaosas alustades numbriga 1 ja uuemad käsud allosas.
2. Ajaloo väljundist otsimine
Kindlat märksõna saate otsida ka ajaloo väljundist. Teie määratud märksõnale vastavate käskude otsimiseks siduge ajaloo käsk grepiga ja konkreetne märksõna:
$ ajalugu | grep [märksõna]Näiteks kõigi käskude loetlemiseks, mis sisaldavad märksõna „find”, oleks käsk järgmine:
$ ajalugu | grep leida
3. Viimase n käsu vaatamine
Vaikimisi on ajaloo käsk loetletud viimase 1000 kasutaja poolt täidetud käskude arvu. Juhul, kui soovite loetleda ainult konkreetse arvu, ütleme n viimati täidetud käsu arv, käivitage terminalis järgmine käsk:
$ ajalugu nNäiteks, kui soovite loetleda viimased 7 täidetud käsku, oleks see järgmine:
$ ajalugu 7Kindlat märksõna sisaldavate viimaste n käskude arvu kuvamiseks võite kasutada järgmist süntaksit:
$ ajalugu | grep märksõna | saba -nSelle näiteks on vaadata viimast 4 täidetud käsku märksõnaga “java”.
$ ajalugu | grep java | saba -n
4. Vanimate käskude vaatamine
Vanima n arvu käskude kuvamiseks võite kasutada terminalis järgmist süntaksit:
$ ajalugu | pea -nKindla märksõna sisaldava vanima n arvu käskude kuvamiseks kasutage järgmist süntaksit:
$ ajalugu | grep märksõna | head -nSelle näiteks võiks olla vanimate 4 täidetud käskude kuvamine märksõnaga “java”.
$ ajalugu | grep java | pea -4
5. Kustutage Bashi ajalugu täielikult
Kogu bashi ajaloo eemaldamiseks käivitage terminalis järgmine käsk:
$ ajalugu -cwBashi käsuloo kohandamine
Bashi käsuloo kohandamiseks peame muutma failis ~ /.bashrc fail. ~ / Redigeerimiseks.bashrc faili, kasutage järgmist käsku:
$ nano ~ /.bashrcKui olete faili muutmise lõpetanud, kasutage nano-redaktori salvestamiseks ja sulgemiseks klahve Ctrl + O ja Ctrl + X.
Seejärel käivitage muudatuste rakendamiseks järgmine käsk:
$ source ~ /.bashrc1. Lisage kuupäev ja ajatempel Bashi ajalukku
Kui soovite kuvada kuupäeva ja ajatempli koos käsulooga, saate seda teha, lisades järgmise rea ~ /.bashrc:
$ eksport HISTTIMEFORMAT = '% F,% T'Nüüd käivitage ajalugu käsk ja see näitab käsu ajalugu koos vastavate andmete ja ajatempliga.
2. Bashi ajaloo suurenemine
Bash hoiab vaikimisi ajaloo loendis 500 käsku. Kuid seda väärtust saame muuta väärtuse HISTSIZE abil.
Bashi ajaloo praeguse suuruse kuvamiseks käivitage terminalis järgmine käsk:
$ echo $ HISTSIZESamamoodi on bashi ajaloofaili vaikimisi suurus 500. Ajaloofailis on maksimaalne arv kirjeid.
Oletame, et bashi ajaloo suuruse suurendamiseks ütleme 10000, lisage järgmised read rida ~ /.bashrc-fail:
$ HISTSIZE = 10000$ HISTFILESIZE = 10000
Kui soovite kontrollida, kas bashi ajaloo suurus on edukalt muutunud, käivitage terminalis järgmised käsud:
$ echo $ HISTSIZE$ echo $ HISTFILESIZE
3. Lisage ajaloofaili Bashi käsud
Kui bashi seanss on suletud, saate histappendi muutuja abil valida, kas kirjutada ajaloofaili käsud üle või lisada need. Praeguste sätete kuvamiseks käivitage terminalis järgmine käsk:
$ shopt histappendVäljundi „sees” näitab, et valik histappend on lubatud ja käsud lisatakse ajaloofaili ülekirjutamise asemel. Kuigi kuvatakse „off”, on histappendi valik keelatud ja fail kirjutatakse üle.
Avage ~ /.bashrc-fail ja:
Kui soovite ülekirjutamise asemel käsud lisada ajaloofaili, lisage järgmine rida:
$ shopt -s histappendVõi lisage järgmine rida, kui soovite valiku Lisa keelata ja soovite väljumisel faili üle kirjutada:
$ shopt -u histappend4. Salvestage Bashi ajalugu kohe
Bash salvestab vaikimisi seansi bashi ajaloofaili alles pärast seansi lõppu. Selle vaikekäitumise muutmiseks ja iga täidetud käsu koheseks salvestamiseks võite kasutada rakendust PROMPT_COMMAND.
Redigeeri ~ /.bashrc fail ja lisage järgmine rida:
$ PROMPT_COMMAND = 'ajalugu -a'Nüüd, kui täidate mõnda käsku, lisatakse see kohe ajaloofaili.
5. Kontrollige Bashi ajalugu
Saame HISTCONTROL muutuja abil kontrollida, kuidas bash meie käsulugu salvestab. Saame selle määrata, et ignoreerida dubleerivaid kirjeid ja / või eirata valgete tühikutega kirjeid.
- ignoreeri ruumi - välistab käsud, mis algavad kosmoseajaloo loendiga.
- ignoredup - duplikaadikäskude kõrvaldamine.
- ignoreboth - lubage nii ignoreeritud üles- kui ignoreerimisruum
- kustutatud - kõrvaldage duplikaadid kogu loendist
Nende funktsioonide rakendamiseks avage ~ /.bashrc ja lisage järgmine rida väärtusega, mis on kooloniga eraldatud järgmiselt:
$ export HISTCONTROL = ignoreeruum: ignoreeritud6. Eirake konkreetseid käske
Muutuja HISTIGNORE abil saame ka kontrollida, milliseid käske ajaloos eirata. See on kooloniga eraldatud mustrite loend, milles saame määrata kõik käsud, mida soovime ajaloost eirata.
Näiteks kui me ei soovi ajaloo loendis loetleda põhikäske nagu ajalugu, ls, pwd, siis lisame ~ /.bashrc-fail:
$ export HISTIGNORE = "ajalugu: ls: pwd:"Linuxi bashi käsuloo abil saate teha palju muud kui lihtsalt vanade käskude kordamist. Selles artiklis oleme õppinud, kuidas kasutada bashi ajalugu varem täidetud käskude kuvamiseks ja õppinud juhtima ka seda, kuidas bash käsulugu salvestab.