I slike scenarier kan vi bruke vår Shell -kommandohistorikk til å bla gjennom våre tidligere kommandoer eller bruke omvendt søk for å søke etter en spesifikk kommando ved hjelp av pilene opp og ned.
Denne opplæringen vil diskutere måter å finne og gjenbruke våre tidligere kommandoer ved hjelp av ZSH -kommandohistorikkfunksjonen.
ZSH -historiabler
Før vi dykker inn i hvordan vi kan søke gjennom vår kommandohistorikk i ZSH, er det nyttig å diskutere forskjellige variabler som Zsh bruker for å håndtere kommandohistorikk.
I noen tilfeller kan du oppleve at kommandohistorikken for ZSH -skallet ikke er lagret i en vedvarende fil. Derfor kan det hende at noen av variablene vi vil diskutere ikke være satt.
De essensielle variablene du bør være klar over når du jobber med Zsh -historien er:
$ Histfile - Denne variabelen beskriver banen til zsh -historifilen. Hvis du har rammer som Oh-my-ZSH installert, vil dette referere til .zsh_history -fil i hjemmekatalogen din.
ekko $ histfile
/Hjem/Ubuntu/.zsh_history
$ Histsize - Histsize -variabelen bestemmer antall kommandoer som er lastet inn i minnet fra historifilen. Som standard er denne verdien satt til 100 kommandoer.
ekko $ histsize
1000
$ Savehist - En annen viktig variabel er Savehist. Det bestemmer det maksimale antall kommandoer som er lagret i .zsh_history -fil. Standardverdien for denne variabelen ligner på $ histsize.
Echo $ Savehist
1000
Ovennevnte er noen viktige Zsh -historiabler du burde vite. Du kan lære mer ved å sjekke dokumentasjonen eller bruke kommandoen:
mann zshoptions
Hvordan aktivere Zsh -historie
Som nevnt tidligere, kan du møte en situasjon der Zsh ikke beholder kommandohistorikken din. For å løse dette, må du legge til $ histfilen til din .Zshrc -fil.
Legg til følgende oppføring i din .Zshrc -fil.
Eksporter histfile = ~/.zsh_history
Du kan også legge til de ovennevnte miljøvariablene for å spesifisere det maksimale antallet kommandoer som er lagret i historifilen. Endre denne verdien til et hvilket som helst nummer du ønsker. I motsetning til Bash, kan du imidlertid ikke legge til en 0 for å lagre ubegrensede kommandoer.
Eksporter HistSize = 1000
Eksport SaveHist = 1000
For å lagre endringene i din nåværende økt, bruk kommandoen:
kilde ~/.Zshrc
Hvordan se og bruke ZSH -historie
Nå som vi har aktivert kommandohistorikk i ZSH -skallet, kan vi lære å bruke den.
Alle kommandoene du skriver i ZSH -økten, blir automatisk lagret i historiefilen for gjenbruk.
For å se alle kommandoene som er lagret i .zsh_history -fil, du kan katte innholdet i filen som:
Men bare å se alle kommandoene, har du tidligere henrettet ikke hjelper oss.
For å gjennomgå alle kommandoene du har utført tidligere, bruk pil opp og ned for å bla gjennom historien.
Up Arrow vil bla opp i filen som viser den tidligste kommandoen du kjørte, mens pil nedover vil bla nedover filen som viser den siste kommandoen i historien din.
Når du finner kommandoen du ønsker å kjøre på nytt, trykker du på Enter for å be skallet om å utføre det.
Hvis du kommer over en kommando med en lignende syntaks som du vil, men ikke en nøyaktig, kan du bruke venstre og høyre piler til å navigere gjennom kommandoen og redigere den.
TIPS: For raskt å navigere til begynnelsen eller slutten av kommandoen, bruk henholdsvis Ctrl + A og Ctrl + E.
Konklusjon
Denne opplæringen viste deg hvordan du jobber med ZSH -kommandohistorikk. Hvis du ikke trenger å administrere ZSH-kommandoparametrene manuelt, kan du vurdere å installere OH-My-ZSH-rammeverket som følger med mange funksjoner som er aktivert ut av boksen.