GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come eseguire il completamento automatico del terminale quando sono presenti diversi file/directory?

Se ho più directory, come:

afoo abar

a volte il mio terminale rifiuterà il completamento automatico quando premo tab (ad es. "cd a" quindi tab) e stampi invece l'elenco delle directory. A volte emette anche un suono rumoroso e fastidioso. Qualche idea su come renderlo automatico in casi come questo? Ad esempio, può mostrare prima abar, e poi afoo se premo di nuovo tab. Ho visto che questo è il caso in Windows o in alcune applicazioni in Ubuntu

Migliore risposta

Qualcosa che è un salvavita per me è avere bash scorrere le possibilità invece di mostrare un elenco stupido.

Poiché bash sta usando readline per il suo completamento automatico, aggiungi le seguenti righe a ~/.inputrc

Una volta che sei soddisfatto e hai testato a fondo la soluzione di seguito per alcuni giorni/settimane, taglia e incolla (non copiare!) le stesse impostazioni da ~/.inputrc a /etc/inputrc che contiene le impostazioni a livello di sistema, rendendole disponibili a tutti gli utenti del tuo sistema (incluso il guest).

Il codice:

# mappings to have up and down arrow searching through history:
"e[A": history-search-backward
"e[B": history-search-forward
# mappings to have left and right arrow go left and right: 
"e[C": forward-char
"e[D": backward-char

# mapping to have [Tab] and [Shift]+[Tab] to cycle through all the possible completions:
"t": menu-complete
"e[Z": menu-complete-backward

quindi exit il tuo terminale (o terminale remoto come stucco) e aprilo di nuovo...

Esempi:

  1. Quando hai 3 file:file1 , file2 e file3 e scrivi:

    e fTabTabTab

    scorrerà:

    e file1
    e file2
    e file3
    

    e quando vuoi tornare indietro, premi semplicemente Maiusc +Scheda

  2. Quando digiti:

    very-complicated-command with lots of command line parameters
    

    e la prossima volta che hai bisogno dello stesso comando, digita semplicemente:

    very

    e digiterà per te:

    very-complicated-command with lots of command line parameters
    

Questo ti farà risparmiare un sacco di tempo in bash! 😉


Ubuntu
  1. Come eseguire un comando quando il contenuto di una directory viene aggiornato?

  2. Come personalizzare il completamento automatico di Bash per elencare i file in un'altra directory?

  3. Come elencare le dimensioni dei file ricorsivi di file e directory in una directory?

  4. Come nascondere l'output del terminale durante l'esecuzione di un comando?

  5. Come mostrare il percorso completo di un file o di una directory nel terminale?

Come contare i file nella directory in Linux

Come scaricare file usando la riga di comando in Ubuntu Terminal

Come estrarre file in una cartella particolare in Linux

Come rendere visibili gli asterischi delle password nel terminale di Ubuntu

Come visualizzare i file gif in Ubuntu Terminal

Come rimuovere file e directory su terminale Linux