find -name "*.jpg" -o -name "*.css"
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.
find -name "*.jpg" -o -name "*.css"
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"
Como alternativa, você pode digitar:
find -name "*.jpg" -or -name "*.css"
Tags command-line search linux