Bash globbing: como expressar “algo - *. txt exceto * -foobar.txt” como glob?

5

Na linha de comando, posso expressar facilmente em termos de shell globs que gostaria de capturar todos os arquivos something-*.txt , exceto something-*-foobar.txt ? Se eu puder, como?

NB: Eu sei como conseguir o mesmo com grep -v ou outras combinações de vários comandos. A questão é apenas sobre se (e se sim como) conseguir isso com globs de shell.

    
por 0xC0000022L 18.02.2013 / 20:09

1 resposta

8

Você pode ativar o globbing estendido no estilo ksh com:

shopt -s extglob

E, em seguida, escreva something-!(*-foobar).txt

    
por 18.02.2013 / 20:54