NOC online · 24/7Longview, TX · +1 323 412 0665
KinetikatechServers · Security · Websites
ES

Comandos de Linux y habilidades de Shell

find: La búsqueda de Linux que lo hace todo

find es el comando más peligroso en un servidor de producción, y es exactamente por eso que merece dominio. Enumera, filtra y ejecuta en una expresión, y cada incidente clásico '/var here be dragons' se remonta a una vista previa que alguien se saltó. Los hábitos son mecánicos: caminar con -print o -ls primero, procesar lotes con -exec ... +, canalizar -print0 a xargs -0 y tratar -delete como una decisión de segundo paso, nunca como un primer borrador.

Puntos clave

  • Filtre por metadatos, no solo por nombre: -type f, -mtime +30, -size +100M y -perm -o+w localicen los archivos impares que las convenciones de nomenclatura y los informes de antigüedad omiten.
  • Obtenga una vista previa de cada consulta destructiva: busque /var/www/uploads -name 'core.*' -ls primero, intercambie -ls por -delete solo después de leer la lista; la vista previa es una comprobación de seguridad, no una sugerencia.
  • -exec cmd {} + agrupa archivos en pocas invocaciones y supera el \; formarse en árboles grandes; la misma sintaxis permite 'rm cada archivo coincidente en un proceso' sin un error de lista de argumentos demasiado larga.
  • Salida segura para nulos de forma predeterminada: buscar. -nombre '*.old' -print0 | xargs -0 rm -v; Las canalizaciones simples en xargs son un patrón conocido de pérdida de datos el día en que un nombre de archivo contiene un espacio.
  • -xdev y -max Depth mantienen el camino honesto: impiden que find siga montajes e instantáneas, lo que rescata tanto el tiempo de ejecución como sus suposiciones sobre 'este directorio'.
  • Las ventanas de tiempo son precisas si se preguntan con precisión: -mmin -1440 para las últimas 24 horas, -newermt '2026-01-01' para desde una fecha, y recuerde -xtime significa 'hace n períodos completos de 24 horas' antes de citarlo en un ticket.
  • Pode deliberadamente: encuentre . -path '*/node_modules' -prune -o -name '*.js' -print omite el directorio que de otro modo supera al resto del árbol en tamaño y tiempo.
  • Espere salidas distintas de cero en directorios ilegibles; Las líneas stderr como 'Permiso denegado' son archivos omitidos, no datos, por lo que los scripts toleran el estado de salida de la búsqueda o lo verifican explícitamente en lugar de asumir recorridos limpios.

Nota de campo

Nuestra peor historia de búsqueda y eliminación comenzó con un patrón de nombre sin comillas que el segundo caparazón se expandió a tres palabras antes de buscar. Desde entonces, la regla es simple: -imprimir primero, citar siempre y -eliminar nunca incluye un comando la primera vez que se ejecuta.

Preguntas frecuentes

Mi búsqueda encontró archivos pero el comando descendente no hizo nada. ¿Por qué?

Casi siempre entre comillas o entrada vacía: el shell expandió el patrón antes de que find lo viera, o xargs no recibió nada. Cotiza patrones y empareja -print0 con xargs -0 cada vez.

-¿eliminar o rm después de buscar?

-delete es directo, rápido e implacable; no se puede mezclar con -exec en la misma expresión. Ejecute primero el -print coincidente y léalo; esa es toda la disciplina.

¿Por qué aparecen errores de permisos de impresión en los directorios del sistema?

Componentes que no pueden leer errores de impresión en stderr y hacer que la salida de búsqueda sea distinta de cero; filtre con 2>/dev/null para mayor comodidad interactiva y nunca interprete esos errores como ausencia de archivos.

¿Diferencia entre -mtime y -ctime otra vez?

-mtime es cambio de contenido, -ctime es cambio de metadatos (permisos, cambio de nombre, recuento de enlaces duros); un chown o un movimiento choca con ctime sin tocar mtime, lo que confunde exactamente un informe por trimestre.

Cómo ayuda Kinetikatech con comandos de linux y habilidades de shell

Esto es lo que hacemos cada día: Los comandos y hábitos de secuencias de comandos que deciden si un administrador opera un servidor o lucha contra él: buscar, transformar, transferir y supervisar texto y procesos con las herramientas que se encuentran en cada instalación básica. Nuestro servicio Seguridad de servidores Linux y Gestión de servidores lo cubre de principio a fin: evaluación, implementación, monitoreo 24/7 y respuesta de emergencia en 30 minutos.

Hablar con un ingeniero

¿Problemas con el servidor? ¿Sitio hackeado? ¿Web lenta?

Incidencias críticas atendidas en 30 minutos — 24 horas al día, 7 días a la semana.

Solicitar soporte urgente support@kinetikatech.com