Cómo buscar archivos en CentOS (Linux) con el comando find
CentOS (Community Enterprise Operating System) es una distribución Linux empresarial (ahora CentOS Stream). El comando find es la herramienta estándar para localizar archivos por nombre, tipo, tamaño, fecha, permisos, etc.
Sintaxis básica
find [ruta_inicio] [expresiones] [acciones]
Si omites la ruta, busca en el directorio actual (`.`).
Ejemplos prácticos
Por nombre exacto
find / -name "tables.txt" 2>/dev/null
`2>/dev/null` oculta errores de "Permiso denegado".
Por patrón (comodines)
find /home -name "tables.*" # cualquier extensión
find /var/log -name "*.log" # todos los .log
find / -name "report[0-9].txt" # report1.txt, report2.txt...
Usa `-iname` para ignorar mayúsculas/minúsculas.
Por tipo de archivo
find / -type f -name "*.conf" # solo archivos regulares
find /etc -type d -name "nginx*" # solo directorios
find /dev -type l # enlaces simbólicos
Por tamaño
find / -size +100M # mayores de 100 MB
find /home -size -1k # menores de 1 KB
find / -size 50M # exactamente ~50 MB
Por tiempo (modificación/acceso/cambio)
find /var/log -mtime -7 # modificados últimos 7 días
find /home -atime +30 # no accedidos en 30 días
find / -ctime -1 # metadatos cambiados hoy
- `-mmin`, `-amin`, `-cmin` para minutos.
- `-newer archivo` → más nuevo que el archivo de referencia.
Por permisos y propietario
find / -perm /u=s # archivos con bit SUID
find / -user juan # propiedad de juan
find / -group www-data # grupo www-data
Ejecutar acción sobre resultados
find /tmp -name "*.tmp" -delete # eliminar (¡cuidado!)
find /home -name "*.jpg" -exec cp {} /backup/ \;
find . -type f -name "*.txt" -exec grep -l "error" {} \;
- `{}` se sustituye por cada archivo encontrado.
- `\;` termina `-exec`; `+` agrupa varios archivos en una invocación (más rápido).
- `-ok` pide confirmación antes de cada ejecución.
Combinar criterios (operadores lógicos)
find /var/log -name "*.log" -size +10M -mtime -30
# logs >10 MB modificados en últimos 30 días
find / \( -name "*.jpg" -o -name "*.png" \) -type f
# imágenes JPG o PNG (paréntesis escapados)
Alternativa rápida: locate
`locate patron` usa base de datos actualizada periódicamente (`updatedb`). Mucho más rápido, pero no en tiempo real ni con filtros avanzados.
sudo dnf install mlocate # o yum/install según versión
sudo updatedb
locate tables.txt
Consejo
Para búsquedas frecuentes complejas, crea un script o alias en tu `.bashrc`.
- ·Cómo buscar archivos en WinRAR
- ·Cómo encontrar un archivo de imagen ISO en Windows
- ·Cómo encontrar un archivo en Eclipse
- ·Cómo reemplazar archivos DLL
- ·Cómo descomprimir (abrir) archivos ZIP en Windows y Mac
- ·Cómo descomprimir archivos TGZ (tar.gz) en Windows, Linux y Unix
- ·Cómo leer archivos cifrados en Windows
- ·Cómo convertir archivos WFM
