Undgå Bash-Historikproblemer: Sådan Forhindrer Du Tidligere Kommandoer i at Blive Tilføjet

Hvordan kan det undgås, at bash-prompten tilføjer dele af tidligere kommandoer, når der scrolleres i bash-historikken med op/ned-pilene?

For at undgå, at bash-prompten tilføjer dele af tidligere kommandoer, når der scrolleres i bash-historikken med op/ned-pilene, skal du redigere .bashrc-filen og tilføje specifikke historikindstillinger samt konfigurere Readline i .inputrc-filen.

Hvordan kan det undgås, at bash-prompten tilføjer dele af tidligere kommandoer, når der scrolleres i bash-historikken med op/ned-pilene?

For at undgå, at bash-prompten tilføjer dele af tidligere kommandoer, når der scrolleres i bash-historikken med op/ned-pilene, kan du følge disse trin:

  • Rediger .bashrc-filen: Åbn din .bashrc-fil, som typisk findes i din hjemmemappe. Du kan bruge en teksteditor som nano eller vim:
    nano ~/.bashrc
  • Tilføj historikindstillinger: Tilføj følgende linjer til din .bashrc-fil for at konfigurere bash-historikken korrekt:
    
    # Undgå at tilføje duplikater eller linjer, der starter med mellemrum
    HISTCONTROL=ignoreboth
    
    # Gem flere kommandoer i historikken
    HISTSIZE=1000
    HISTFILESIZE=2000
    
    # Tilføj kommandoer til historikfilen straks
    PROMPT_COMMAND='history -a'
        
  • Genindlæs .bashrc-filen: For at ændringerne skal træde i kraft, skal du genindlæse .bashrc-filen:
    source ~/.bashrc
  • Brug Readline-konfiguration: Du kan også konfigurere Readline, som bash bruger til at håndtere input. Opret eller rediger .inputrc-filen i din hjemmemappe:
    nano ~/.inputrc
    Tilføj følgende linjer for at forbedre historiknavigationen:
    
    # Ignorer mellemrum i begyndelsen af kommandoer
    set skip-completed-text on
    
    # Brug søgning fremad og bagud i historikken
    "\e[A": history-search-backward
    "\e[B": history-search-forward
        
  • Genstart terminalen: Luk og genåbn din terminal for at sikre, at alle ændringer træder i kraft.

Ved at følge disse trin kan du undgå, at bash-prompten tilføjer dele af tidligere kommandoer, når du scroller i bash-historikken med op/ned-pilene.