conclusão da guia esquerda no bash ou zsh

conclusão da guia esquerda no bash ou zsh

Quando uso o preenchimento de tabulação padrão no bash ou zsh, digito a primeira parte de um nome de arquivo ou caminho e, em seguida, clico para completar a palavra. Isso funciona bem, a menos que eu esteja em um diretório cheio de arquivos onde todas as variações nos nomes dos arquivos estão no final da palavra, por exemplo, um diretório cheio de arquivos com carimbo de data e hora que começam com o mesmo prefixo:

foo-20120701124501.log
foo-20120701124531.log
foo-20120701124601.log
foo-20120701124631.log
foo-20120701124701.log
foo-20120701124731.log

Nesse caso, se eu digitar, foo<tab>conseguirei foo-20120701124-- posso tabular novamente e ver todos os arquivos... Eu teria que digitar os próximos 3 caracteres para chegar a um nome de arquivo exclusivo.

Gostaria de saber se existe uma maneira de digitar, por exemplo, 4731.loge completar o início da palavra. Suponho que isso seria difícil no bash, porque a conclusão do bash usa $COMP_CWORDe $COMP_KEYpara sua conclusão programável e, pela maneira como estou lendo, não acho que isso permitiria a conclusão de palavras para a esquerda. Não sei o suficiente sobre a conclusão dentro do zsh para saber por onde começar a procurar nas páginas de manual.

Responder1

Isso só funcionará se houver um comando inicial antes de clicar na guia. Provavelmente não é o que você está procurando, mas a única coisa que consegui foi obter os resultados desejados. O exemplo abaixo deve funcionar no seu caso. Você só precisa estar no final do *4731.log e clicar na guia 1 vez. Se for único, será preenchido automaticamente.

ls *4731.log

informação relacionada