Kommandohistorikken hjælper dig med at se kommandoer, du tidligere har kørt inde i terminalen. Sådan kan du administrere kommandohistorikken på Linux.

På Linux bliver hver kommando, du skriver, gemt i historiefilen. Historiekommandoen lader dig se og genbruge disse kommandoer uden at skulle indtaste dem igen. Du kan navigere gennem historiklisten ved hjælp af Op og ned nøgler. Der kan dog være tidspunkter, hvor du vil slette nogle kommandoer fra historikken eller permanent deaktivere funktionen til lagring af historik.

Heldigvis lader Linux dig styre kommandologningsfunktioner, såsom at deaktivere det midlertidigt eller permanent, sletning af hele historikken eller forhindrer visse kommandoer i at blive gemt i historikken liste. Lad os se hvordan.

Slet hele kommandohistorikken på Linux

For at slette det hele kommandohistorik på Linux fra begyndelsen skal du bruge historikkommandoen med -c mulighed:

historie -c

Dette vil slette hele historikken for de kommandoer, du tidligere har kørt.

Slet specifikke kommandoer fra historikken

instagram viewer

Nogle gange i stedet for at slette hele historien, vil du måske fjerne bestemte kommandoer. I dette tilfælde skal du bestemme det nummer, der er knyttet til den pågældende kommando i historiklisten. Du kan gøre dette ved blot at skrive:

historie

Eller du kan også overføre historieoutputtet til grep for nemmere at finde den ønskede information:

historie | grep ifconfig

Når du har fundet kommandonummeret, kan du slette det ved at bruge historikkommandoen med -d mulighed efterfulgt af kommandonummeret:

historie -d 

Udfør en kommando uden at inkludere den i historikken

For at udføre en kommando, uden at den er registreret i historikken, skal du blot tilføje en Plads før kommandoen. Men for at denne funktion skal fungere, skal du indstille HISTKONTROL miljøvariabel til ignorer space ved hjælp af følgende kommando:

eksport HISTCONTROL=ignorespace

Denne ændring fortsætter ikke efter en genstart. For at gøre det permanent skal du tilføje det til din .bashrc fil ved hjælp af følgende kommando:

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

Ved at aktivere denne funktion vil Bash ikke optage kommandoer, der begynder med et mellemrum i historiefilen.

For eksempel vil følgende kommando ikke blive optaget af skallen:

[mellemrum] echo 'hej, dette er den første linje'

Hvis du kører den samme kommando uden mellemrum, vil Bash registrere det i historikken:

echo 'hej, dette er den første linje'

På samme måde kan du også lade Bash fjerne på hinanden følgende duplikerede kommandoer fra historien med:

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

Denne funktion vil kun gemme de fortløbende dubletter én gang på historiklisten.

Sådan aktiveres/deaktiveres kommandohistorik på Linux

Mens den tidligere metode kan forhindre skallen i at logge kommandoer i historikken, er den muligvis ikke praktisk, når den håndterer et stort antal kommandoer.

At indsætte et mellemrum før hver kommando kan blive ensformigt og byrdefuldt. I et sådant scenarie kan du midlertidigt deaktivere shell-historik ved at udføre følgende kommando:

sæt +o historik

For at tænde det igen, brug følgende kommando:

sæt -o historie

For permanent at deaktivere Linux-kommandohistorik skal du bruge:

echo 'sæt +o historie' >> ~/.bashrc

Ignorer visse kommandoer fra at blive registreret i historikken

Der kan være visse kommandoer, du ønsker at udelukke, da de kan rode historiklisten og gøre det vanskeligt at navigere. Nogle af de almindelige eksempler er pwd, ls, mand, kat og cd kommandoen da det kan være gentagne og overflødige.

Bruger HISTIGNORE miljøvariabel, kan du kontrollere, hvilke kommandoer der ikke skal føjes til historiklisten. For for eksempel at udelukke visse kommandoer såsom historie, pwd og kat fra at gemme i historielisten, skal du adskille dem med et kolon og omslutte dem i dobbelte anførselstegn som følger:

eksport HISTIGNORE="historie: pwd: kat"

For at gøre ændringen permanent skal du tilføje kommandoen til .bashrc fil ved hjælp af:

echo 'HISTIGNORE="historie: pwd: kat"' >> .bashrc

Styr din Bash Command History på Linux

Linux tilbyder omfattende kontrol over styring af kommandolinjehistorik, hvilket giver brugerne mulighed for at angive, hvilke kommandoer der skal gemmes i historik, slet specifikke kommandoer fra historikken, aktiver eller deaktiver historik midlertidigt eller slet endda hele historie.

Dette hjælper ikke kun med at beskytte brugerens privatliv, men forhindrer også irrelevante eller gentagne kommandoer i at rode i Bash-historien.

En endnu bedre måde at få adgang til kommandolinjehistorik er at bruge McFly, en neural-netværksdrevet erstatning til standard reverse-i-search på Linux.