Sådan bruges CTRL R i Linux

Hvis du bruger den moderne bash shell, kan du bruge Ctrl + R som en tastaturgenvej til at søge gennem din kommandohistorik. Du kan hente kommandoer, du tidligere har brugt, og udstede dem igen. Dette fungerer muligvis også i andre skaller, f.eks. Hvis du bruger ksh i emacs-tilstand. Du kan faktisk fremskynde din kommandolinjearbejde meget ved hjælp af dette lille trick.

Du bliver nødt til at arbejde fra en terminal for at dette kan fungere. Hold Ctrl, Alt og T nede for at åbne en eller Super + T, hvis dit skrivebordsmiljø understøtter det. Du kan også klikke på menuen Applikationer, gå til Systemværktøjer og derefter klikke på Terminal eller søge efter det på Ubuntu Dash.

Metode 1: Brug Ctrl + R til at søge efter en kommando

Ved bash-prompten skal du holde Ctrl-tasten nede og trykke på R. Du modtager en besked, der læser (omvendt-i-søgning) '': efterfulgt af markøren. Skriv det første bogstav i en kommando, du har udstedt før, for at finde den. Hvis du f.eks. Har brugt cat-kommandoen til at se på en tekstfils indhold, skal du trykke på c. Hvis du har brugt cal til at se en måneds kalender, kommer dette muligvis også op.

Tryk på Ctrl + R igen for at bladre gennem lignende navngivne kommandoer. Hvis du har en lang bash-historie, kan du muligvis finde et antal kommandoer med lignende navne. Når du har fundet den kommando, du vil køre, skal du trykke på enter-tasten, så vil din prompt se ud som om du lige har skrevet den og kørt den. Du behøver ikke at skrive den fulde kommando, men i stedet kun et bogstav eller to.

Du kan skrive et par bogstaver for at finde en længere kommando, som du muligvis har udstedt tidligere, og den kommer også op med det samme på kommandolinjen, og du kan derefter trykke på enter for at køre den som normalt. Det gør processen med at finde noget i din historie meget lettere. Når en kommando er på linjen, kan du også bruge piletasterne og redigere den, før du kører den.

Hvis du tænker bedre på at køre en kommando, kan du altid holde Ctrl-tasten nede igen og trykke på C for at annullere ud af Ctrl + R-søgningen, ligesom du kunne annullere alt andet ved terminalens kommandolinje. Du kan bruge denne teknik efter at have kørt nogen anden type kommando overhovedet, og på trods af hvad nogle websteder måske læser, behøver du faktisk ikke bekymre dig om, hvilken type output der allerede er inde i din terminal, når du prøver det.

Metode 2: Tilføj et Ctrl R-mærke

Hvis du vil vende tilbage til en almindeligt anvendt kommando igen og igen, kan du faktisk tilføje et tag til det ved at kommentere et navn til kommandoen i slutningen af ​​den linje, den sidder på. Indtast en kommando efterfulgt af et mellemrum, og skriv derefter #Find mig efter det. Tryk på Enter og kør kommandoen. Skallen ignorerer simpelthen tag #findme, da det tæller som en programmeringssprogskommentar.

Nu, når som helst du vil finde den kommando, skal du holde Ctrl + R nede og begynde at skrive #fin, så den popper lige op. Hvis du vil tagge mere end en kommando på denne måde, skal du blot komme med andre ting at mærke dem med. Du vil måske prøve at tagge # command1, # ​​command2 og så videre, hvis du vil. På den måde kan du skrive #com og derefter trykke på Ctrl + R et par gange for at finde den kommando, du leder efter. Dette fungerer bedst, hvis du har en massiv kommandohistorik. Hvert tag forbliver i historikken, indtil det bliver ryddet ud.

Metode 3: Aktivering af emacs-tilstand i ksh

Hvis du bruger ksh som din standardskal, skal du skrive sæt -o emacs og tryk enter. Dette aktiverer emacs-tilstand, som giver dig mulighed for at bruge Ctrl + R-tricket på samme måde som bash tillader det. Det fungerer aldrig så lidt anderledes, og brugere af bash shell behøver aldrig at gøre dette, så de fleste Linux-kodere kan simpelthen ignorere dette trin.

Brugere, der foretrækker ksh, kan skubbe Ctrl + R nu, og skallen udskriver ^ R til skærmen. Skriv din søgning, og tryk derefter på enter. Du ser den nærmeste matchende post, som du kan redigere eller køre ved at trykke på enter igen. Af den måde muliggør emacs et par andre muligheder, såsom normal piletastfunktionalitet.