A notação de correspondência de padrões do shell é descrita em documento de normas .
Como o documento diz em sua introdução, a notação de correspondência de padrões está relacionada, mas ligeiramente diferente, à notação de expressão regular.
Em particular, ?
no shell age como .
em uma expressão regular e *
no shell age como .*
em uma expressão regular. (Mas nenhum deles corresponderá a .
no início de um nome de arquivo.) +
no shell não possui nenhuma capacidade especial de correspondência de padrões. No entanto, como a @HaukeLaging diz em sua resposta, certos shells podem opcionalmente ter a notação de expressão regular habilitada, embora isso não seja padrão.