Para o bash:
definir desativação e conclusão desativada
No SLES 10.1, quando você pressiona a tecla Tab sem digitar nada em um diretório, você obtém uma lista do diretório. Qual é a configuração disso para que eu possa configurá-lo no CentOS 5.4?
Você precisa ter os módulos de conclusão bash instalados. Algumas distribuições empacotam-nas com o bash, outras empacotam-nas separadamente. Depois de instalados, você precisa ativá-los. No Ubuntu / Debian, isso é feito com o sourcing de /etc/bash_completion
no seu .bash {rc, _profile}.
Para o CentOS 5, o processo está documentado aqui:
Eu estou supondo que você esteja se referindo ao SUSE listando tudo no diretório atual em vez de mostrar todos os comandos executáveis em seu caminho, já que o bash por padrão tem a guia completa ativada e nunca ouvi falar de uma distribuição desabilitando como padrão.
O Bash tem o comando builtin completo que permite personalizar a conclusão da tabulação. Existem vários projetos que fornecem algumas conclusões decentes para muitas ferramentas comuns. É possível que isso seja o que o SUSE usa. Você deve ser capaz de encontrar a função exata que eles usam, olhando através dos arquivos de inicialização do bash (que você pode encontrar listados na página do manual muito abrangente (read: long)). Um deles fornecerá uma coleção de funções completas, uma das quais fará o que você quiser.
Eu tenho que pedir a sabedoria de aba completando o conteúdo do diretório atual. Eu suponho que mostrar uma lista de 3-4000 programas não é o recurso mais útil. Se você já tem algo na linha de comando, aba completa o executável no seu caminho ou completa em algo no diretório atual?
Tags linux