No Linux, procurar arquivos pode ser feito de duas formas principais: vasculhando o disco em tempo real ou consultando um índice pré-existente. Entender a diferença entre elas economiza minutos preciosos no terminal.
| Recurso | Comando locate |
Comando find |
|---|---|---|
| Velocidade | Instantânea (usa banco de dados) | Lenta (varre o disco) |
| Precisão | Pode estar desatualizado | Sempre 100% atualizado |
| Poder | Busca simples por nome | Busca por data, tamanho, dono e executa ações |
O locate é imbatível na rapidez porque ele lê um arquivo de índice chamado mlocate.db. Para garantir que ele encontre arquivos novos, você precisa atualizar esse índice:
# updatedb (Como root, reconstrói a base) # locate -i arquivo (O "-i" ignora maiúsculas/minúsculas [00:00:36])
O find é muito mais que um buscador. Ele permite encontrar arquivos baseando-se em filtros avançados mostrados pela Nixie Pixel:
Encontrar arquivos modificados nos últimos 10 minutos no diretório raiz:
# find / -type f -mmin -10 ([00:01:04])
Você pode encontrar arquivos e movê-los ou removê-los automaticamente usando o -exec. Cuidado: este comando é potente e pode sobrescrever dados se usado incorretamente [00:01:54].
# find ~ -iname "*foto*" -exec mv {} /destino/pasta/ \;
Confira o vídeo original da Nixie Pixel sobre o poder do Find:
Assista no YouTube