Kommandohistorikken hjelper deg med å se kommandoer du tidligere har kjørt inne i terminalen. Her er hvordan du kan administrere kommandohistorikken på Linux.

På Linux blir hver kommando du skriver lagret i historiefilen. Historiekommandoen lar deg se og gjenbruke disse kommandoene uten å måtte skrive dem på nytt. Du kan navigere gjennom historikklisten ved å bruke Opp og Ned nøkler. Det kan imidlertid være tider du ønsker å slette noen kommandoer fra loggen eller permanent deaktivere historikklagringsfunksjonen.

Heldigvis lar Linux deg kontrollere kommandologgingsfunksjoner, for eksempel å deaktivere den midlertidig eller permanent, sletting av hele historien, eller forhindrer at visse kommandoer lagres i loggen liste. La oss se hvordan.

Slett hele kommandohistorikken på Linux

For å slette hele kommandohistorikk på Linux fra begynnelsen, bruk historiekommandoen med -c alternativ:

historie -c

Dette vil slette hele historien til kommandoene du tidligere har kjørt.

Slett spesifikke kommandoer fra historien

Noen ganger vil du kanskje fjerne spesifikke kommandoer i stedet for å slette hele historien. I dette tilfellet må du bestemme nummeret knyttet til den aktuelle kommandoen i historikklisten. Du kan gjøre dette ved å skrive:

historie

Eller du kan også overføre historikken til grep for å finne den ønskede informasjonen enklere:

historie | grep ifconfig

Når du har funnet kommandonummeret, kan du slette det ved å bruke historiekommandoen med -d alternativ etterfulgt av kommandonummeret:

historie -d 

Utfør en kommando uten å inkludere den i historien

For å utføre en kommando uten at den er registrert i historikken, legg til en Rom før kommandoen. Men for at denne funksjonen skal fungere, må du stille inn HISTKONTROLL miljøvariabel til ignorer space ved å bruke følgende kommando:

eksport HISTCONTROL=ignorespace

Denne endringen vedvarer ikke etter en omstart. For å gjøre den permanent, legg den til i din .bashrc fil ved å bruke følgende kommando:

echo 'HISTCONTROL=ignorespace' >> ~/.bashrc

Ved å aktivere denne funksjonen vil ikke Bash ta opp kommandoer som begynner med et mellomrom i historiefilen.

Følgende kommando vil for eksempel ikke bli registrert av skallet:

[mellomrom] ekko 'hei, dette er den første linjen'

Hvis du kjører den samme kommandoen uten mellomrom, vil Bash registrere den i historien:

echo 'hei, dette er den første linjen'

På samme måte kan du også la Bash fjerne påfølgende dupliserte kommandoer fra historien med:

echo 'HISTCONTROL=ignoredups' >> ~/.bashrc

Denne funksjonen lagrer de påfølgende duplikatene bare én gang i historikklisten.

Hvordan aktivere/deaktivere kommandohistorikk på Linux

Selv om den forrige metoden kan forhindre at skallet logger kommandoer i historikken, er det kanskje ikke praktisk når man arbeider med et stort antall kommandoer.

Å sette inn et mellomrom før hver kommando kan bli monotont og tyngende. I et slikt scenario kan du midlertidig deaktivere skallhistorikk ved å utføre følgende kommando:

angi +o-historikk

For å slå den på igjen, bruk følgende kommando:

sett -o historikk

For å deaktivere Linux-kommandohistorikk permanent, bruk:

echo 'sett +o historie' >> ~/.bashrc

Ignorer visse kommandoer fra å bli registrert i historien

Det kan være visse kommandoer du ønsker å ekskludere, da de kan rote historikklisten og gjøre det vanskelig å navigere. Noen av de vanlige eksemplene er pwd, ls, mann, katt og cd-kommandoen da det kan være repeterende og overflødig.

Bruker HISTIGNORE miljøvariabel, kan du kontrollere hvilke kommandoer som ikke skal legges til i historikklisten. For å ekskludere visse kommandoer som historie, pwd og cat fra lagring i historikklisten, skiller du dem for eksempel med et kolon og omslutter dem i doble anførselstegn som følger:

eksport HISTIGNORE="historie: pwd: katt"

For å gjøre endringen permanent, legg til kommandoen i .bashrc fil ved hjelp av:

echo 'HISTIGNORE="history: pwd: cat"' >> .bashrc

Kontroller Bash Command History på Linux

Linux tilbyr omfattende kontroll over administrasjon av kommandolinjehistorikk, slik at brukere kan spesifisere hvilke kommandoer som skal lagres i historikk, slett spesifikke kommandoer fra loggen, aktiver eller deaktiver historikk midlertidig eller slett hele historie.

Dette bidrar ikke bare til å beskytte brukerens personvern, men forhindrer også at irrelevante eller repeterende kommandoer roter til Bash-historien.

En enda bedre måte å få tilgang til kommandolinjehistorikk på er å bruke McFly, en nevrale nettverksdrevet erstatning til standard reverse-i-search på Linux.