Overzicht van geschiedenis
Elke keer dat de gebruiker een commando in de terminal invoert, wordt dat commando vastgelegd in het geschiedenisbestand (meestal `~/.bash_history` of `~/.zsh_history`). Het `history` commando leest de inhoud van dit bestand en toont deze op het scherm, waarbij de geschiedenis behouden blijft, zelfs nadat de shell-sessie is beëindigd.
Belangrijkste functies van geschiedenis
`history` commando wordt voornamelijk gebruikt voor de volgende doeleinden:
Belangrijke Toepassingen
- Heruitvoeren van commando's: Je kunt eerder gebruikte lange commando's gemakkelijk heruitvoeren zonder ze opnieuw in te voeren.
- Taaktracking: Helpt bij het controleren van welke taken in het verleden zijn uitgevoerd en om workflows te begrijpen.
- Verbetering van productiviteit: Snel toegang krijgen tot vaak gebruikte commando's om tijd te besparen bij het invoeren.
- Referentie voor het schrijven van scripts: Gebruik eerdere succesvolle combinaties van commando's bij het schrijven van scripts.
Omgevingsvariabelen en geschiedenis
De geschiedenisfunctie wordt beïnvloed door verschillende omgevingsvariabelen:
Belangrijke gerelateerde omgevingsvariabelen
- `HISTSIZE`: Het maximale aantal commando's dat in het geheugen kan worden opgeslagen. Dit blijft behouden gedurende de huidige shell-sessie.
- `HISTFILESIZE`: Het maximale aantal commando's dat kan worden opgeslagen in het geschiedenisbestand (`~/.bash_history` enz.). Dit blijft behouden tussen shell-sessies.
- `HISTFILE`: Geeft het pad op waar de commando-geschiedenis wordt opgeslagen. De standaardwaarde is `~/.bash_history`.
- `HISTCONTROL`: Beheert de manier waarop de geschiedenis wordt vastgelegd. (Bijv.: `ignoredups` - negeert dubbele commando's, `ignorespace` - negeert commando's die met een spatie beginnen)
Belangrijke geschiedenis commando opties
`history` commando biedt verschillende opties voor het bekijken, bewerken en beheren van de geschiedenislijst.
1. Geschiedenis bekijken en weergeven
2. Geschiedenis bewerken en heruitvoeren
Gegenereerde opdracht:
Probeer de opdrachtcombinaties.
Uitleg:
`history` Voer het commando uit.
Combineer deze opties en voer de opdracht virtueel uit met de AI.
Voorbeeldtoepassingen
Leer hoe je de geschiedeniscommando's effectief kunt bekijken en hergebruiken aan de hand van verschillende voorbeelden van het `history` commando.
Bekijk de laatste 20 commando's
history 20
Toont een lijst van de 20 laatst uitgevoerde commando's met nummers.
Zoek een specifieke string in de geschiedenis
history | grep docker
Gebruik het `grep` commando om commando's met 'docker' in de `history` geschiedenis te vinden.
Voer het vorige `ls` commando opnieuw uit
!ls
Zoek het meest recente commando dat begon met `ls` en voer het opnieuw uit.
Herbruik het laatste argument van het laatste commando
cat /var/log/syslog
less !$
Handig wanneer je `cat /var/log/syslog` hebt uitgevoerd en `/var/log/syslog` opnieuw wilt openen met het `less` commando.
Sla de huidige shell geschiedenis direct op in een bestand
history -w
Sla alle commando's die in de huidige sessie zijn uitgevoerd onmiddellijk op in het `~/.bash_history` bestand voordat je de shell sluit.
Verwijder een specifiek geschiedenisnummer
history -d 125
Verwijder het commando dat nummer 125 heeft in de geschiedenis, zoals bevestigd met het `history` commando. (Let op: eenmaal verwijderd kan het niet worden hersteld)