BASH-ohjelmointi

Bash-komentohistorian käyttäminen ja mukauttaminen

Bash-komentohistorian käyttäminen ja mukauttaminen
Bash-kuori on oletusarvoinen komentoriviympäristö, joka on käytettävissä useimmissa Linux-jakeluissa. Samoin kuin kaikissa shell-ympäristöissä, se pitää kirjaa komennoista, jotka käyttäjä on aiemmin suorittanut. Tätä kirjaa pidetään ja ylläpidetään, vaikka käynnistämme järjestelmämme uudelleen.

Saatat tietää historian komennon peruskäytön, mutta se voi tehdä paljon enemmän. Bash-historia tallennetaan yleensä tiedostoon ~ /.bash_historia. Sen avulla voit hakea tallennetun tietueen takaisin ja käyttää sitä uudelleen tehokkaalla tavalla, jotta saat parhaan hyödyn bash-historian tallennusominaisuudesta. Ei vain tätä, mutta voit myös muokata ja hallita bash-komennon lähtöä haluamallasi tavalla.

Tässä artikkelissa selitämme, kuinka bash-komentohistoriaa voidaan käyttää ja mukauttaa tehokkaasti sen ominaisuuksien hyödyntämiseksi.

Olemme käyttäneet Debian 10: tä tässä artikkelissa mainittujen komentojen ja menettelyjen suorittamiseen.

Bash-komentohistorian käyttäminen

1. Bash-historian tarkasteleminen

Voit tarkastella shell-komentojen koko historiaa suorittamalla seuraavan komennon Terminalissa:

$ historia

Se luetteloi tietyn käyttäjän koko historian historiatiedostosta, joka on tallennettu nimenomaan tälle käyttäjälle. Näet kaikki komennot, jotka alkavat kullekin osoitetulla numerolla. Se listaa vanhemmat komennot ylhäältä alkaen numerosta 1 ja uudemmat komennot alhaalta.

2. Haku historiatiedostosta

Voit myös etsiä tiettyä avainsanaa historian tuotoksesta. Yhdistä historiakomento grep: n ja tietyn avainsanan kanssa etsiäksesi määritettyä avainsanaa vastaavia komentoja seuraavasti:

$ historia | grep [avainsana]

Esimerkiksi, jos haluat luetella kaikki komennot, jotka sisältävät avainsanan "etsi", komento olisi:

$ historia | grep löytää

3. Viimeisten n komennon tarkastelu

Historia-komento näyttää oletusarvoisesti käyttäjän suorittamat viimeiset 1000 komentoa. Jos haluat listata vain tietyn numeron, sanotaan n viimeisen suoritetun komennon numero, suorita seuraava komento Terminalissa:

$ historia n

Esimerkiksi viimeisten seitsemän suoritetun komennon luetteloimiseksi komento olisi:

$ historia 7

Voit tarkastella viimeksi määritetyn avainsanan sisältävien n ajokomennon määrää käyttämällä seuraavaa syntaksia:

$ historia | grep-avainsana | häntä -n

Esimerkki tästä olisi tarkastella viimeisiä 4 suoritettua komentoa avainsanalla “java”.

$ historia | grep java | häntä -n

4. Katso vanhimmat komennot

Voit tarkastella vanhinta n komentojen määrää käyttämällä terminaalin seuraavaa syntaksia:

$ historia | pää -n

Voit tarkastella vanhinta n komentojen määrää, jotka sisältävät tietyn avainsanan, käyttämällä seuraavaa syntaksia:

$ historia | grep avainsana | head -n

Esimerkki tästä olisi tarkastella vanhimpia 4 suoritettua komentoa avainsanalla “java”.

$ historia | grep java | pää -4

5. Tyhjennä Bash-historia kokonaan

Poista koko bash-historia suorittamalla seuraava komento Terminalissa:

$ historia -cw

Bash-komentohistorian mukauttaminen

Bash-komentohistorian mukauttamiseksi meidän on tehtävä muutoksia ~ /.bashrc-tiedosto. ~ /.bashrc-tiedosto, käytä seuraavaa komentoa:

$ nano ~ /.bashrc

Kun olet muokannut tiedostoa, tallenna ja sulje nanoeditori painamalla Ctrl + O ja Ctrl + X.

Suorita sitten seuraava komento soveltaa muutoksia:

$ lähde ~ /.bashrc

1. Lisää päivämäärä ja aikaleima Bash-historiaan

Jos haluat näyttää päivämäärän ja aikaleiman sekä komentohistorian, voit tehdä sen lisäämällä seuraavan rivin ~ /.bashrc:

$ export HISTTIMEFORMAT = '% F,% T'

Suorita nyt historia komento ja se näyttää komentohistorian vastaavilla tiedoilla ja aikaleimalla.

2. Bash-historian koko kasvaa

Bash pitää oletuksena 500 komentoa historialuettelossa. Voimme kuitenkin muuttaa tätä arvoa käyttämällä HISTSIZE-arvoa.

Voit tarkastella bash-historian nykyistä kokoa suorittamalla seuraava komento Terminalissa:

$ echo $ HISTSIZE

Samoin bash-historiatiedoston oletuskoko on 500. Se on historiatiedostossa olevien merkintöjen enimmäismäärä.

Jos haluat lisätä bash-historian kokoa, sanotaan 10000, lisää seuraavat rivit ~ /.bashrc-tiedosto:

$ HISTSIZE = 10000
$ HISTFILESIZE = 10000

Suorita seuraavat komennot Terminalissa varmistaaksesi, että bash-historian koko on muuttunut onnistuneesti:

$ echo $ HISTSIZE
$ echo $ HISTFILESIZE

3. Liitä Bash-komennot historiatiedostoon

Kun bash-istunto on suljettu, voit valita, korvataanko vai lisätäänkö historiatiedoston komennot histappend-muuttujan avulla. Voit tarkastella nykyisiä asetuksia suorittamalla seuraavan komennon Terminalissa:

$ shopt histappend

Lähdön ”päällä” -vaihtoehto osoittaa, että histappend-vaihtoehto on käytössä ja komennot liitetään historiatiedostoon korvaamisen sijaan. Kun “off” näkyy, histappend-vaihtoehto on poistettu käytöstä ja tiedosto korvataan.

Avaa ~ /.bashrc-tiedosto ja:

Lisää seuraava rivi, jos haluat liittää komennot historiatiedostoon korvaamisen sijaan:

$ shopt -s histappend

Tai lisää seuraava rivi, jos haluat poistaa lisäysasetuksen käytöstä ja haluat korvata tiedoston poistuttaessa:

$ shopt -u histappend

4. Säilytä Bash-historiaa välittömästi

Bash tallentaa oletusarvoisesti istunnon bash-historiatiedostoon vasta, kun istunto on päättynyt. Voit muuttaa tätä oletuskäyttäytymistä ja saada jokaisen suorittamasi komennon tallentamaan välittömästi käyttämällä PROMPT_COMMAND -ohjelmaa.

Muokkaa ~ /.bashrc-tiedosto ja lisää seuraava rivi:

$ PROMPT_COMMAND = 'historia -a'

Nyt kun suoritat minkä tahansa komennon, se lisätään välittömästi historiatiedostoon.

5. Ohjaa Bash-historiaa

HISTCONTROL-muuttujan avulla voimme hallita tapaa, jolla bash tallentaa komentohistoriamme. Voimme määrittää sen ohittamaan päällekkäiset merkinnät ja / tai ohittamaan merkinnät, joissa on etureunaa.

Voit käyttää näitä toimintoja avaamalla ~ /.bashrc ja lisää seuraava rivi arvoilla, jotka on erotettu kaksoispisteellä seuraavasti:

$ export HISTCONTROL = ignorespace: ignoredup

6. Ohita tietyt komennot

Voimme myös hallita mitä komentoja ohittaa historiassa käyttämällä muuttujaa HISTIGNORE. Se on kaksoispisteellä erotettu luettelo malleista, joissa voimme määrittää kaikki komennot, jotka haluamme ohittaa historiasta.

Esimerkiksi, jos emme halua luetella peruskomentoja, kuten historia-, ls-, pwd-komentoja historialuettelossa, lisätään seuraava rivi ~ /.bashrc-tiedosto:

$ export HISTIGNORE = "historia: ls: pwd:"

Linux bash -komentohistorian avulla voit tehdä paljon enemmän kuin vain toistaa vanhat komennot. Tässä artikkelissa olemme oppineet käyttämään bash-historiaa aiemmin suoritettujen komentojen tarkastelemiseen ja oppineet myös hallitsemaan tapaa, jolla bash tallentaa komentohistorian.

Mouse left-click button not working on Windows 10
If you are using a dedicated mouse with your laptop, or desktop computer but the mouse left-click button is not working on Windows 10/8/7 for some rea...
Cursor jumps or moves randomly while typing in Windows 10
If you find that your mouse cursor jumps or moves on its own, automatically, randomly while typing in Windows laptop or computer, then some of these s...
How to reverse Mouse and Touchpads scrolling direction in Windows 10
Mouse and Touchpads not only make computing easy but more efficient and less time-consuming. We cannot imagine a life without these devices, but still...