Encontre com regex que não funciona no CentOS 7

Encontre com regex que não funciona no CentOS 7

Tenho problemas com localização e expressão regular. Gostaria de encontrar arquivos em/etc, cujo nome comece com a ou b. Eu tentei estes comandos:

find /etc -type f -regex '^a'
find /etc -regextype sed -regex "^a"
find /etc -regextype egrep -regex '^a'
find /etc -regextype posix-egrep -regex '^a'

Mas não está funcionando. Tenho 20 arquivos em /etc cujo nome começa com a, mas meu regexp não encontra esses arquivos. O que eu faço de errado?

Atenciosamente Paweł

Responder1

-regexcorresponde ao caminho completo, não apenas ao nome do arquivo.

A coisa mais próxima que encontrei seria:

find /etc -type f  -regex '.+/[ab][^/]+'

Isso corresponde a /, seguido por aou b, seguido por tudo que não é outro /.

Responder2

Isso costumava ser muito simples, com:

find /etc -type f -name 'a*'

informação relacionada