- 1. Bekijk of vermeld de opdrachtgeschiedenis in Linux
- 2. Vind opdrachten in Linux met Geschiedenis
- 3. Een opdracht wijzigen die op Linux wordt uitgevoerd
- 4. Geschiedenis van Linux-opdrachten wissen
- 5. Bekijk een opgegeven aantal Linux-opdrachtgeschiedenisregels
- 6. Herhaal een commando dat begint met een string op Linux
- 7. Geschiedenisbestand bewerken op Linux
- 8. Voer een enkele opdracht uit zonder in te loggen
- 9. Voer alle opdrachten uit zonder in te loggen op Linux
- 10. Negeer specifieke opdrachten op Linux met geschiedenis
- 11. Vergroot de grootte van het logbestand op Linux
- 12. Tijdstempels toevoegen aan de opdracht Geschiedenis onder Linux
- 13. Bewerk de locatie van het logbestand in Linux
Een van de meest ideale manieren om het werk op Linux-machines te vereenvoudigen, is door de mogelijkheid te hebben om opdrachten op een bijna autonome manier uit te voeren. Dit is mogelijk met een speciaal commando van Linux-distributies genaamd "Geschiedenis" of geschiedenis, dat, zoals we al kunnen vermoeden, verantwoordelijk is voor het opslaan van commando's in een Linux-bestand dat we in de terminalsessie hebben uitgevoerd. Dit geeft ons de mogelijkheid om deze commando's opnieuw te gebruiken zonder ze handmatig in te voeren.
Het is een zeer nuttig commando dat we kunnen combineren met bepaalde parameters om bepaalde commando's opnieuw uit te voeren of om een gedetailleerd register van Linux-commando's bij te houden voor elk commando dat in Linux wordt uitgevoerd en Solvetic zal uitleggen hoe het effectief te gebruiken.
Vervolgens gaan we een compilatie zien van verschillende hulpprogramma's die we kunnen uitvoeren met de opdracht Geschiedenis in Linux.
1. Bekijk of vermeld de opdrachtgeschiedenis in Linux
Stap 1
Het is de basismanier om deze opdracht te gebruiken, omdat je alle opdrachten in de sessie kunt zien door het volgende in de terminal uit te voeren. We kunnen zien dat elke opdracht die is uitgevoerd, wordt weergegeven met een identifier.
Geschiedenis
VERGROTEN
Stap 2
Om een van deze commando's uit te voeren, gebruiken we het teken! gevolgd door het juiste nummer, bijvoorbeeld:
!1
VERGROTEN
2. Vind opdrachten in Linux met Geschiedenis
Het History-commando is veelzijdig, het stelt ons in staat om het laatste commando uit te voeren door de tekens !! in te voeren, dit kan op zijn beurt worden gecombineerd met het grep-commando om te zoeken naar commando's die overeenkomen met een tekstpatroon.
Stap 1
We zullen bijvoorbeeld zoeken naar alle opdrachten die de term "update" hebben gebruikt. Zoals we kunnen zien, komt elk met zijn respectieve identifier.
Geschiedenis | grep-update
VERGROTEN
Stap 2
Een alternatief is om de toetsencombinatie Ctrl-R te gebruiken om toegang te krijgen tot een recursieve zoekopdracht in de opdrachtgeschiedenis, bij gebruik hiervan zal de terminal de volgende tekst hebben. Vervolgens kunnen we de gewenste zoekcriteria invoeren.
(omgekeerd-i-zoeken) '' ':
VERGROTEN
3. Een opdracht wijzigen die op Linux wordt uitgevoerd
Met de opdracht Geschiedenis kunnen we een opdracht uitvoeren met een andere syntaxis, we kunnen bijvoorbeeld het volgende doen. Dit verandert de zoekopdracht van update naar SSH.
bijwerken ssh
4. Geschiedenis van Linux-opdrachten wissen
Wanneer we honderden commando's gebruiken, zal de geschiedenis ongetwijfeld een aanzienlijk aantal regels weergeven en veel van deze commando's zullen niet langer nodig zijn. Een goed advies van Solvetic is om de geschiedenis van een bepaalde regel of in zijn geheel op te schonen, de opties hiervoor zijn als volgt:
- Een specifieke regel verwijderen: Geschiedenis -d
- Wis alle geschiedenis: Geschiedenis -c
VERGROTEN
5. Bekijk een opgegeven aantal Linux-opdrachtgeschiedenisregels
We willen misschien maar een bepaald aantal uitgevoerde commando's zien, bijvoorbeeld de laatste 6, hiervoor zullen we het volgende invoeren:
Geschiedenis 6
VERGROTEN
6. Herhaal een commando dat begint met een string op Linux
We zien dat om het laatste commando met Geschiedenis uit te voeren dat we invoeren !! Terwijl we een specifiek commando herhalen, voeren we # van regel in, dit is handig, maar we kunnen ook commando's uitvoeren die beginnen met een string, dit wordt bereikt met de syntaxis! string:
ik sudo
VERGROTEN
7. Geschiedenisbestand bewerken op Linux
Standaard wordt het History-opdrachtbestand geschreven op het moment dat de sessie wordt afgesloten, dit is natuurlijk erger als we SSH-sessies afhandelen waarbij de time-out wordt overschreden, de geschiedenis van die sessie zal gewoon verdwijnen, dit kan worden voorkomen door rechtstreeks te schrijven naar het bash_History-bestand met de parameter -w:
Geschiedenis -w
VERGROTEN
8. Voer een enkele opdracht uit zonder in te loggen
Dit is een optie die ons de mogelijkheid geeft om een commando uit te voeren zonder dat het wordt opgeslagen in de bash-geschiedenis, bijvoorbeeld:
echo "Oplossend"; Geschiedenis -d $ (Geschiedenis 1)
VERGROTEN
9. Voer alle opdrachten uit zonder in te loggen op Linux
Het is mogelijk dat we de variabele van het History-commando uitschakelen waarmee het register van de uitgevoerde commando's wordt opgeslagen, hierdoor wordt alles wat we doen niet vastgelegd, hiervoor voeren we het volgende uit:
echo $ HISTFILE uitgeschakeld HISTFILE
VERGROTEN
10. Negeer specifieke opdrachten op Linux met geschiedenis
Het is mogelijk om een lijst met opdrachten aan te geven die niet in het geschiedenisbestand worden opgenomen, hiervoor gebruiken we de variabele $ HISTIGNORE, deze variabele is niet standaard geconfigureerd, daar voeren we eenvoudig het volgende in:
echo 'export HISTIGNORE = "ls: cd"' >> ~ / .bashrc
11. Vergroot de grootte van het logbestand op Linux
Stap 1
Het History-commando maakt gebruik van de $ HISTSIZE- en $ HISTFILESIZE-variabelen om de commando's vast te leggen met een standaardcapaciteit van respectievelijk 1000 en 2000 commando's:
VERGROTEN
Stap 2
Deze waarden worden opgeslagen in de / etc / profieldirectory en hun waarde kan worden bewerkt met de nieuwe gegevens aan het einde van de ~ / .bashrc-regel. Deze wijzigingen worden van kracht bij de volgende login.
VERGROTEN
12. Tijdstempels toevoegen aan de opdracht Geschiedenis onder Linux
Stap 1
Wanneer we het History-commando gebruiken, zien we alleen het uitgevoerde commando, maar geen details van datum en tijd, met de $ HISTTIMEFORMA-variabele kunnen we deze waarden toevoegen:
echo 'export HISTTIMEFORMAT = "% c"' >> ~ / .bashrcStap 2
Hierna sluiten we de sessie en bij het gebruik van Geschiedenis zien we het volgende:
13. Bewerk de locatie van het logbestand in Linux
Voor administratieve problemen willen we misschien het standaardpad van het geschiedenisbestand wijzigen, dat is ~ / .bash_History, hiervoor gebruiken we de $ HISTFILE-variabele als volgt:
echo $ HISTFILE su - gebruikerMet het gebruik van Geschiedenis hebben we totale controle over elk van de commando's die we in Linux uitvoeren.