Como localizo todos os arquivos que incluem uma palavra específica como parte do nome e terminam com uma extensão específica?

1

Estou usando o comando locate .

Eu quero encontrar todos os arquivos que terminem com uma extensão específica e tenham uma palavra-chave específica em seu nome.

Por exemplo, quero encontrar uma imagem como esta:

  
    

myImageFromSummer.jpg

  

Eu quero pesquisar por palavra-chave "Summer" e extensão ".jpg".

Como seria o comando para essa tarefa?

    
por Kunok 18.05.2016 / 16:20

3 respostas

4
locate -b '*Summer*.jpg'

A opção -b informa locate para corresponder apenas ao nome do arquivo e * no padrão corresponde a qualquer número de caracteres.

    
por Florian Diesch 18.05.2016 / 16:36
1

Use * na parte do nome, como um exemplo seria:

sudo find /etc -name "*.jpg"

Pelo menos isso funciona para mim (eu sou um novato completo aqui, mas sei que vai funcionar).

sudo <--> to execute the command as root 

find  <--> the commando for searching

/etc  <--> is the directory where you want to find the archive

-name <--> option flag to detail what you are looking for 

*     <--> everything / anything

.jpg  <--> the extension 

Agora, o * pode ser usado na parte do nome, como na parte de extensão, mas não use *.* , pois ele pesquisará todos os arquivos contendo . em seu caminho de pesquisa.

    
por Yoa Oses 18.05.2016 / 16:29
0

O seguinte irá procurar todos os sistemas de arquivos montados:

sudo find / -name \*Summer*.jpg -print

Se você quisesse pesquisar logo abaixo do diretório atual, substitua o "/" por um ".".

    
por P. Miller 18.05.2016 / 16:33