Terminal do Ubuntu, Como eu “tab” (autocomplete) um nome de arquivo window-cmd-style (cycle options)?

13

Basicamente eu quero mudar o terminal do Ubuntu funcionalmente, para que eu possa percorrer todas as opções quando eu tab (na linha de linha cmd) e não listar as opções como é por padrão?

Estou usando o bash, o Ubuntu 9.04. Eu vejo algumas possibilidades em ".bashrc", mas deve haver alguém lá fora que já resolveu esse problema?

    
por Daniel T. Magnusson 12.09.2009 / 10:35

2 respostas

16

De acordo com os comentários em esta página , colocando

bind '"\t":menu-complete'

no seu .bashrc deve ativar a conclusão da guia cíclica.

Veja seção 8.4.6 do Bash Reference Manual para mais informações.

    
por 12.09.2009 / 11:07
0

Algo que é um salva-vidas para mim é ter o ciclo bash através das possibilidades, em vez de mostrar uma lista estúpida.

Como o bash está usando readline para seu preenchimento automático, adicione as seguintes linhas a ~/.inputrc

Quando estiver satisfeito e tiver testado completamente a solução por alguns dias / semanas, recorte e cole (não copie!) as mesmas configurações de ~/.inputrc a /etc/inputrc que contém as configurações de todo o sistema, disponibilizando isso para todos os usuários em seu sistema (incluindo guest).

O codez:

# 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

depois exit do seu terminal (ou terminal remoto como o putty) e abra-o novamente ...

Exemplos:

  1. Quando você tem 3 arquivos: file1 , file2 e file3 e digita:

    e fTabTabTab

    passará por:

    e file1
    e file2
    e file3
    

    e quando você quiser voltar, clique em Shift + guia

  2. Quando você digita:

    very-complicated-command with lots of command line parameters
    

    e da próxima vez que você precisar do mesmo comando, basta digitar:

    very

    e vai escrever para você:

    very-complicated-command with lots of command line parameters
    

Isso vai poupar muito tempo em bash! ; -)

Fonte

    
por 16.09.2018 / 09:21