Bash globbing arquivos ocultos

Bash globbing arquivos ocultos

Estou tentando os seguintes globs em um shell bash:

$ ls -d .*
.  ..  .a  .ab
$ ls .a*
.a  .ab
$ ls .[!.]*
.a  .ab
$ ls .[!.]?*
.ab

A última expressão não deveria significar "um ponto seguido por exatamente um não-ponto seguido por zero ou mais caracteres"? Por que não corresponde .a?

Responder1

Você está enganado. Significa "um ponto seguido por exatamente um não-ponto seguido por um caractere seguido por zero ou mais caracteres". .anão tem caracteres suficientes para corresponder.

Mas realmente, basta definir dotglob.

informação relacionada