Você pode ativar menu-complete no Bash para percorrer as entradas na linha de comando cada vez que você pressionar Tab. Isso não é exatamente o que você está procurando. Se você quiser tentar, faça isso no prompt de comando:
bind '"\C-i": menu-complete'
Para fazê-lo persistir, adicione isso ao seu ~/.inputrc Arquivo:
"\C-i": menu-complete
Zsh tem um recurso que permite usar as teclas de seta para selecionar uma entrada. Adicione isto (ou outra variação) ao seu ~/.zshrc Arquivo:
zstyle ':completion:*' menu select=0
Vejo man zshcompsys e procure por "select =" (será na seção para o menu "Standard Style") para mais informações.
Caso contrário, no Bash, você poderia escrever uma função (ou até mesmo criar sua própria função de conclusão) que faria algo baseado no select comando. Isso é extremamente simplista:
$ select a in x y z; do cd $a; done
1) x
2) y
3) z
#?
Você teria que fazer muito para conseguir fazer o que você quer.
eu gosto do seu select solução. Isso é exatamente o que eu queria! Eu adicionei um break depois de cd $ae eu alias este comando. Isso é muito melhor que a conclusão da guia.
dehmann
@dehman: É parte de "flesh that out". Você precisa de um break declaração. Experimentar: select a in x y z; do cd $a; break; done. Você pode usar find para construir a lista de diretórios para escolher, em vez de codificá-los. Outra coisa que você pode querer olhar é o CDPATH variável (e Aqui ).
Dennis Williamson
9
Você já usa a conclusão normal? experimentar
complete -d cd pushd rmdir
Na sua concha e veja se está perto o suficiente do que você quer.
Você também pode tentar zsh que tem melhor conclusão do que o bash.
select
solução. Isso é exatamente o que eu queria! Eu adicionei umbreak
depois decd $a
e eu alias este comando. Isso é muito melhor que a conclusão da guia.break
declaração. Experimentar:select a in x y z; do cd $a; break; done
. Você pode usarfind
para construir a lista de diretórios para escolher, em vez de codificá-los. Outra coisa que você pode querer olhar é oCDPATH
variável (e Aqui ).Você já usa a conclusão normal? experimentar
Na sua concha e veja se está perto o suficiente do que você quer.
Você também pode tentar zsh que tem melhor conclusão do que o bash.
fonte