Encontre vários arquivos no linux

4

Estou pesquisando por arquivos no linux e consigo executar o comando para procurar um único tipo de formato, por exemplo, *.jpg , mas gostaria de encontrar todos os arquivos com *.jpg e *.css em um comando.

    
por Johny Emmanuel Tsuen 23.04.2012 / 10:20

3 respostas

9

 find -name "*.jpg" -o -name "*.css"
    
por 23.04.2012 / 10:23
4

Existe uma variante impressionante com o regex:

find -regex ".*\.\(css\|jpg\)" 

É mais curto e evita armadilhas, combinadas com as versões -o:

find ./ -name "*.jpg" -o -name "*.css" -ls 

O ls só é adaptado ao segundo padrão, aqui. Você pode evitá-lo com

find ./ \( -name "*.jpg" -o -name "*.css" \) -ls 

mas isso também está ficando um pouco enigmático.

Muito rápido para pesquisar todo o seu sistema no update-db-index is locate, que também sabe regex, mas não encontra arquivos novos:

locate -r "Frame.\(scal\|jav\)a"
    
por 23.04.2012 / 23:37
2

Como alternativa, você pode digitar:

find -name "*.jpg" -or -name "*.css" 
    
por 23.04.2012 / 10:36