De opdrachtgeschiedenis helpt u bij het bekijken van opdrachten die u eerder in de terminal hebt uitgevoerd. Hier leest u hoe u de opdrachtgeschiedenis op Linux kunt beheren.

Op Linux wordt elke opdracht die u typt, opgeslagen in het geschiedenisbestand. Met de opdracht geschiedenis kunt u die opdrachten bekijken en opnieuw gebruiken zonder ze opnieuw te hoeven typen. U kunt door de geschiedenislijst navigeren met behulp van de Omhoog En Omlaag sleutels. Het kan echter voorkomen dat u enkele opdrachten uit de geschiedenis wilt verwijderen of de functie voor het opslaan van geschiedenis permanent wilt uitschakelen.

Gelukkig kun je met Linux functies voor het vastleggen van opdrachten beheren, zoals het tijdelijk uitschakelen of permanent, de hele geschiedenis verwijderen of voorkomen dat bepaalde opdrachten in de geschiedenis worden opgeslagen lijst. Laten we eens kijken hoe.

Verwijder de volledige opdrachtgeschiedenis op Linux

Om het geheel te wissen opdrachtgeschiedenis op Linux gebruik vanaf het begin de opdracht geschiedenis met de -C keuze:

geschiedenis -c

Hiermee wordt de volledige geschiedenis gewist van de opdrachten die u eerder hebt uitgevoerd.

Verwijder specifieke opdrachten uit de geschiedenis

Soms wilt u in plaats van de hele geschiedenis te verwijderen, specifieke opdrachten verwijderen. In dit geval moet u het nummer bepalen dat is gekoppeld aan dat specifieke commando in de geschiedenislijst. U kunt dit eenvoudig doen door te typen:

geschiedenis

Of u kunt de geschiedenisuitvoer ook doorsluizen naar grep om de gewenste informatie gemakkelijker te vinden:

geschiedenis | grep ifconfig

Zodra u het commandonummer hebt gevonden, kunt u het verwijderen met behulp van de geschiedenisopdracht met de -D optie gevolgd door het commandonummer:

geschiedenis -d 

Voer een opdracht uit zonder deze op te nemen in de geschiedenis

Om een ​​commando uit te voeren zonder dat het in de geschiedenis wordt vastgelegd, voegt u gewoon een toe Ruimte voor de opdracht. Om deze functie echter te laten werken, moet u het HISTCONTROLE omgevingsvariabele naar negeerruimte met behulp van de volgende opdracht:

export HISTCONTROL=negeerruimte

Deze wijziging blijft niet behouden na een herstart. Om het permanent te maken, voegt u het toe aan uw .bashrc bestand met behulp van de volgende opdracht:

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

Door deze functie in te schakelen, zal Bash geen commando's opnemen die beginnen met een spatie in het geschiedenisbestand.

Het volgende commando wordt bijvoorbeeld niet opgenomen door de shell:

[spatie] echo 'hallo, dit is de eerste regel'

Als je hetzelfde commando uitvoert zonder spatie, zal Bash het opnemen in de geschiedenis:

echo 'hallo, dit is de eerste regel'

Op dezelfde manier kun je Bash ook opeenvolgende dubbele opdrachten uit de geschiedenis laten verwijderen met:

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

Deze functie slaat de opeenvolgende duplicaten slechts één keer op in de geschiedenislijst.

Opdrachtgeschiedenis in- of uitschakelen op Linux

Hoewel de vorige methode kan voorkomen dat de shell commando's in de geschiedenis registreert, is het misschien niet praktisch als het om een ​​groot aantal commando's gaat.

Het invoegen van een spatie voor elke opdracht kan eentonig en omslachtig worden. In een dergelijk scenario kunt u de shellgeschiedenis tijdelijk uitschakelen door de volgende opdracht uit te voeren:

stel +o geschiedenis in

Gebruik de volgende opdracht om het weer in te schakelen:

set-o geschiedenis

Om de geschiedenis van Linux-opdrachten permanent uit te schakelen, gebruikt u:

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

Negeer bepaalde opdrachten die niet in de geschiedenis worden opgenomen

Er kunnen bepaalde commando's zijn die u wilt uitsluiten, omdat ze de geschiedenislijst onoverzichtelijk maken en het navigeren bemoeilijken. Enkele veelvoorkomende voorbeelden zijn pwd, ls, man, cat en het cd-commando omdat het repetitief en overbodig kan zijn.

De... gebruiken HISTIGNORE omgevingsvariabele, kunt u bepalen welke opdrachten niet aan de geschiedenislijst moeten worden toegevoegd. Om bijvoorbeeld bepaalde commando's zoals history, pwd en cat uit te sluiten van opslaan in de geschiedenislijst, scheidt u ze met een dubbele punt en plaatst u ze als volgt tussen dubbele aanhalingstekens:

export HISTIGNORE="geschiedenis: pwd: kat"

Om de wijziging permanent te maken, voegt u de opdracht toe aan het .bashrc bestand met behulp van:

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

Beheer uw bash-opdrachtgeschiedenis op Linux

Linux biedt uitgebreide controle over het beheer van de geschiedenis van de opdrachtregel, waardoor gebruikers kunnen specificeren welke opdrachten moeten worden opgeslagen in het geschiedenis, verwijder specifieke commando's uit de geschiedenis, schakel de geschiedenis tijdelijk in of uit of verwijder zelfs de hele geschiedenis.

Dit helpt niet alleen om de privacy van de gebruiker te beschermen, maar voorkomt ook dat irrelevante of repetitieve opdrachten de Bash-geschiedenis onoverzichtelijk maken.

Een nog betere manier om toegang te krijgen tot de opdrachtregelgeschiedenis is door McFly te gebruiken, een door een neuraal netwerk aangedreven vervanging van de standaard reverse-i-search op Linux.