Como o filtro FIND -E. REGEX usando início e fim do nome do arquivo?

0

Atualmente, estou usando este comando para obter uma lista de arquivos:

find -E . -regex '.*\.(jpg|jpeg|png|gif|pdf)'

Usando esse comando, eu obteria essa lista:

Agora:

documentA.pdf
documentB.jpeg
001documentC.png
...

Meu objetivo é filtrar essa lista, portanto, só obteria arquivos começando com 3 inteiros e terminando com as extensões definidas anteriormente.

Meta:

001documentC.png

Como posso ajustar o comando find -E . -regex para obter esse comportamento? Eu criei uma string de regex: ([0-9][0-9][0-9]).*\.(jpg|jpeg|png|gif|pdf) , testada em regexPal.com mas não consegui fazê-la funcionar com o comando find.

    
por Yann-Reun 13.03.2017 / 13:19

1 resposta

0

Encontrou a solução perfeita graças a essa pergunta do stackoverflow

find -E . -iregex '.*/*\.(jpg|png|eps|gif)'

Teste:

$ touch documentA.pdf documentB.jpeg 001documentC.png 0documentD.eps 0000documentE.pdf
$ find -E . -iregex '.*/[0-9]{3}.*\.(jpg|png|eps|gif)'

./001documentC.png
    
por 14.03.2017 / 19:53