Conclusão de tabulação dentro de loops não funcionando

4

Eu estou ficando louco ou prestes a fazer uma pergunta estupidamente básica. Eu agradeço a sua paciência de qualquer forma.

O preenchimento de tabulação para o comando executável não está funcionando dentro de loops interativos no bash. Eu poderia jurar que costumava funcionar, mas estou aberto à ideia de que isso nunca funcionou e estou ficando louco. Ele funciona bem na linha de comando regular, não dentro de loops. Eu continuo a me encontrar ^ Caindo de escrever um loop para aba-completar o nome para que eu possa copiá-lo e colá-lo (os nomes dos comandos não são tão triviais quanto "o que eu usei no exemplo abaixo).

Exemplo:

$ which whatis
/usr/bin/whatis
$ wh<TAB>(BEEP)<TAB>
whatis    whereis   while     who
wheel     which     whiptail  whoami
$ what<TAB>is
usage: whatis keyword ...
$ for i in foo bar ray
> do
> what<TAB>(BEEP)<TAB>(BEEP)

O ambiente é o seguinte:

$ bash --version
GNU bash, version 4.1.2(1)-release (x86_64-redhat-linux-gnu)
    
por gowenfawr 01.05.2014 / 16:47

1 resposta

3

Pode também postá-lo como uma resposta então. Como uma solução possível, você pode simplesmente evitar quebrar o loop e manter tudo na mesma linha:

for i in foo bar ray; do what<TAB>

Os itens acima permitirão que você conclua what conforme o esperado.

    
por 01.05.2014 / 17:11