Kommandohistoriken hjälper dig att visa kommandon som du tidigare har kört i terminalen. Så här kan du hantera kommandohistoriken på Linux.

På Linux sparas varje kommando du skriver i historikfilen. Med historikkommandot kan du visa och återanvända dessa kommandon utan att behöva skriva om dem. Du kan navigera genom historiklistan med hjälp av Upp och Ner nycklar. Det kan dock finnas tillfällen du vill ta bort några kommandon från historiken eller permanent inaktivera historiksparningsfunktionen.

Lyckligtvis låter Linux dig styra kommandologgningsfunktioner, som att tillfälligt inaktivera det eller permanent, ta bort hela historiken eller förhindra att vissa kommandon sparas i historiken lista. Låt oss se hur.

Ta bort hela kommandohistoriken på Linux

För att radera hela kommandohistorik på Linux från början, använd historikkommandot med -c alternativ:

historia -c

Detta kommer att radera hela historiken för de kommandon du tidigare har kört.

Ta bort specifika kommandon från historiken

Ibland istället för att ta bort hela historiken kanske du vill ta bort specifika kommandon. I det här fallet måste du bestämma numret som är associerat med det specifika kommandot i historiklistan. Du kan göra detta genom att helt enkelt skriva:

instagram viewer

historia

Eller så kan du också skicka historikutgången till grep för att lättare hitta den önskade informationen:

historia | grep ifconfig

När du har hittat kommandonumret kan du ta bort det med hjälp av historikkommandot med -d alternativ följt av kommandonumret:

historia -d 

Utför ett kommando utan att inkludera det i historiken

För att utföra ett kommando utan att det registreras i historiken, lägg helt enkelt till en Plats före kommandot. Men för att den här funktionen ska fungera måste du ställa in HISTKONTROLL miljövariabel till ignorera utrymme med följande kommando:

export HISTCONTROL=ignorespace

Denna förändring kvarstår inte efter en omstart. För att göra det permanent, lägg till det i din .bashrc fil med följande kommando:

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

Genom att aktivera den här funktionen kommer Bash inte att spela in kommandon som börjar med ett blanksteg i historikfilen.

Till exempel kommer följande kommando inte att spelas in av skalet:

[mellanslag] echo 'hej, det här är den första raden'

Om du kör samma kommando utan mellanslag kommer Bash att registrera det i historiken:

echo "hej, det här är första raden"

På samma sätt kan du också låta Bash ta bort på varandra följande dubbletter av kommandon från historien med:

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

Den här funktionen lagrar de på varandra följande dubbletterna endast en gång i historiklistan.

Hur man aktiverar/inaktiverar kommandohistorik på Linux

Även om den tidigare metoden kan förhindra skalet från att logga kommandon i historiken, kanske det inte är praktiskt när man hanterar ett stort antal kommandon.

Att infoga ett mellanslag före varje kommando kan bli monotont och betungande. I ett sådant scenario kan du tillfälligt inaktivera skalhistorik genom att utföra följande kommando:

ställ in +o-historik

För att slå på den igen, använd följande kommando:

set -o historik

För att permanent inaktivera Linux-kommandohistorik, använd:

echo 'set +o history' >> ~/.bashrc

Ignorera vissa kommandon från att registreras i historiken

Det kan finnas vissa kommandon du vill utesluta eftersom de kan röra historiklistan och göra det svårt att navigera. Några av de vanliga exemplen är pwd, ls, man, cat och kommandot cd eftersom det kan vara repetitivt och överflödigt.

Använda HISTIGNORE miljövariabel kan du styra vilka kommandon som inte ska läggas till i historiklistan. Till exempel, för att utesluta vissa kommandon som historia, pwd och cat från att spara i historiklistan, separera dem med ett kolon och omslut dem inom dubbla citattecken enligt följande:

export HISTIGNORE="history: pwd: cat"

För att göra ändringen permanent, lägg till kommandot i .bashrc fil med:

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

Styr din Bash Command History på Linux

Linux erbjuder omfattande kontroll över hantering av kommandoradshistorik, så att användare kan ange vilka kommandon som ska sparas i historik, radera specifika kommandon från historiken, aktivera eller inaktivera historik tillfälligt eller till och med ta bort hela historia.

Detta hjälper inte bara till att skydda användarens integritet utan förhindrar också att irrelevanta eller repetitiva kommandon stör Bash-historiken.

Ett ännu bättre sätt att komma åt kommandoradshistoriken är att använda McFly, en neuralnätverksdriven ersättning till den förinställda reverse-i-search på Linux.