conclusão da guia bash não está funcionando em & redirecionamento

2

Quando uso a conclusão de tabulação em um argumento após o comando ls , ele funciona, mas quando eu o uso depois de algum argumento de script (veja o segundo exemplo abaixo) ele não funciona. Verifiquei se a conclusão da guia está ativada. Como fazer a conclusão da tabulação para todos os comandos?

Nota: Estou executando isso em uma sessão screen (no Ubuntu) se isso for importante.

user$ echo $SHELL
/bin/bash
user$ grep completion ~/.bashrc
if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
    . /etc/bash_completion
user$ 
user$ ls test[TAB]
test.log1                                               
test.log2                                                
test.log4                                              
test.log5                                              

user$ ./script.sh >& test[TAB]  <-- "no output"

Versão do Bash: GNU bash, versão 4.3.11 (1) -release (x86_64-pc-linux-gnu)

    
por user13107 24.03.2017 / 03:15

1 resposta

4

Experimente o equivalente:

$ ./script.sh &> test[TAB]

O &> é a sintaxe preferida para redirecionar stdout e stderr para um arquivo.

A conclusão de tabulação vê isso ( >& ) como outra sintaxe e não mostra os arquivos.

    
por 24.03.2017 / 03:32