Você pode usar o seguinte padrão extglob
:
.@(!(.|))
-
.
corresponde a um literal.
no início -
@()
é um padrãoextglob
, corresponderá a um dos padrões internos, pois temos apenas um padrão dentro dele, ele selecionará -
!(.|)
é outro padrãoextglob
(aninhado), que corresponde a qualquer arquivo sem ou um.
; Como já combinamos.
no início, esse padrão inteiro corresponderá a todos os arquivos que começam com.
, exceto.
e..
.
extglob
está ativado em sessões interativas de bash
por padrão no Ubuntu. Se não, ative primeiro:
shopt -s extglob
Exemplo:
$ echo .@(!(.|))
.bar .foo .spam