Bash globbing files ocultos

Estoy probando los siguientes globos en un shell bash:

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

¿No debería la última expresión significar "un punto seguido exactamente de un punto no seguido de cero o más caracteres"? ¿Por qué no coincide con .a ?

Estás equivocado. Significa "un punto seguido de exactamente un punto no seguido de un carácter seguido de cero o más caracteres". .a no tiene suficientes caracteres para unirlo.

Pero realmente, solo establece dotglob .