Búsqueda en CLI (grep, rg, find, locate, fd)
Guía rápida para buscar texto y archivos desde la terminal.
Qué usar según el caso
grep: buscar texto dentro de archivos.rg(ripgrep): igual que grep, pero más rápido y respeta.gitignore.find: buscar archivos por nombre, fecha, tamaño o permisos.locate: buscar rutas rápido usando una base de datos local.fd: alternativa moderna afindpara búsqueda por nombre.
grep
# Buscar texto en archivos (recursivo)
grep -RIn "patron" ruta/
# Ignorar mayúsculas/minúsculas
grep -RIn -i "patron" ruta/
# Buscar y excluir líneas
grep -RIn "patron" ruta/ | grep -v "excluir"
rg (ripgrep)
# Buscar texto en el repo actual
rg "patron"
# Buscar solo en .md
rg -n -g "*.md" "patron"
# Listar archivos que contienen el patrón
rg -l "patron"
find
# Buscar archivos por extensión
find . -type f -name "*.md"
# Buscar archivos modificados en los últimos 7 días
find . -type f -mtime -7
# Buscar texto usando find + grep
find . -type f -name "*.conf" -exec grep -n "patron" {} +
locate
# Buscar rutas en la base de datos
locate nombre_archivo
# Actualizar la base (según distro)
sudo updatedb
fd
# Buscar por nombre (regex)
fd "config" ~/.config
# Filtrar por extension
fd -e rs
# Incluir ocultos y no respetar .gitignore
fd -H -I "patron" .
Tips rápidos
- Si buscas texto:
rgogrep. - Si buscas archivos por nombre:
fd(simple) ofind(filtros avanzados). - Si quieres máxima velocidad para rutas conocidas:
locate.