Después de leer este tutorial, sabrá cómo simplificar la tarea de eliminar los archivos en Linux utilizando diferentes técnicas. Este tutorial está optimizado para usuarios nuevos y experimentados, yendo directamente al punto práctico y explicando cada aspecto. Te animo a practicar todos los ejemplos dados para incorporar este conocimiento. Solo ten cuidado con el contenido que eliminas.
Este artículo incluye las capturas de pantalla de cada paso, lo que facilita que todos los usuarios de Linux las apliquen.
Encontrar y eliminar archivos en Linux
Esta sección explica las diferentes técnicas para encontrar los archivos y eliminarlos en la marcha con un solo comando o con la combinación de comandos.
Para comenzar, veamos qué hay en el directorio de inicio usando el LS (Lista) Comando.
LSComo puede ver en la figura anterior, hay varios archivos y directorios. Entre ellos, podemos ver el 1.TXT, 2.TXT y 3.TXT.
Podemos usar el comando Buscar seguido del tipo de archivo, el nombre del archivo y el -borrar opción.
Pero en el siguiente ejemplo, no eliminaremos un archivo específico, sino todos los archivos con el ".extensión de txt ".
encontrar . -escriba f -name "*.txt "-deleteDónde:
Como puede ver en la captura de pantalla anterior, después de ejecutar el LS Comando nuevamente, los archivos TXT no se muestran. Fueron eliminados por el comando ejecutado previamente.
Por supuesto, puede encontrar y eliminar los archivos específicos como se muestra en la siguiente figura donde archivo3 se encuentra y elimina.
encontrar . -escriba el archivo F -name3 -deleteComo se explica en la lista de comando y opciones anteriores, si desea eliminar un directorio en lugar de un archivo, debe reemplazar el F con un d después de la -tipo Opción como se muestra en la siguiente imagen:
encontrar . -tipo d -name dir1 -deleteSupongamos que desea eliminar muchos archivos cuya primera parte de sus nombres son las mismas. En la siguiente captura de pantalla, puedes ver el archivo1, archivo2 y archivo3.
Si desea eliminar todos los archivos "FILEX", solo necesita reemplazar la parte de los nombres de archivo sin coincidencia con el comodín (*) como se muestra en el siguiente ejemplo:
encontrar . -escriba f -name "archivo*" -deleteTodos los ejemplos anteriores explicaron cómo eliminar los archivos utilizando el -borrar opción. Esta sección explica cómo obtener el mismo resultado usando el -ejecución dominio.
La primera parte del siguiente comando ya se explicó anteriormente. El comando Incorporated -exec se utiliza para aplicar una acción basada en el resultado del comando anterior.
encontrar . -Nombre "Algo.log "-exec rm -rf \;Dónde:
Ahora, veamos un nuevo escenario usando el comando LS nuevamente. Como puede ver, hay diferentes ".archivos de txt ".
En este caso, reemplazaremos el -borrar opción con el -ejecutivo de nuevo para eliminar todo el ".archivos txt "como lo hicimos en el segundo ejemplo de este documento, pero utilizando una técnica diferente.
Puede ver el comando en la tercera línea de la siguiente figura. El comando LS anterior muestra los archivos existentes antes de ejecutar encontrar, y el segundo LS muestra el resultado con todos los ".archivos txt "eliminados.
encontrar . -escriba f -name "*.txt "-exec rm -f \;Ahora, creemos un nuevo escenario que puede ver en el siguiente ejemplo. Este escenario incluye varios ".txt "y".C archivos ".
Supongamos que desea eliminar ambos .TXT y .C archivos a la vez usando la opción -delete en lugar de la opción -exec. Como puede ver en la siguiente imagen, los archivos de nombre están entre el \ ( y \). Antes del segundo nombre de archivo, tenemos el -O opción seguida de la -nombre y el segundo nombre de archivo (o condición en este caso, ya que estamos eliminando todo el ".archivos txt "). Puedes agregar el -O -nombre muchas veces como necesitas, pero recuerda que el primero -nombre no está precedido por el -O opción.
encontrar . \( -nombre "*.c "-o -name"*.txt "\) -deleteComo puedes ver, ambos .TXT y .C Los archivos se eliminaron con éxito.
Ahora, combinemos el comando Find con el comando xargs (explicado al final de este tutorial).
En el siguiente ejemplo, eliminamos todos los ".archivos txt "usando xargs, donde -I es el marcador de posición y entre % ejecutamos el comando.
Como puede ver, después de la segunda ejecución de LS, todos .C y .TXT se eliminaron los archivos.
encontrar *.txt -type f | XARGS -I % RM " %"La sintaxis para eliminar muchos archivos es más fácil con Xargs. En el siguiente comando, ambos .C y .TXT se eliminan los archivos.
encontrar *.TXT *.t -type f | XARGS -I % RM " %"Finalmente, supongamos que desea eliminar los archivos por fecha y no por nombre o extensión. En este caso, el comando finales puede identificar el mtime (fechas de archivo de creación o modificación) de los archivos y directorios.
En la siguiente imagen, puede ver el dir2 directorio que contiene 4 archivos: archivo1, archivo2, archivo3 y archivo4. Todos los archivos dentro del dir2 fueron creados en las últimas 24 horas.
Identificar los archivos es posible utilizando el -MITIA opción seguida del intervalo de tiempo de los archivos. En este caso, el -1 La opción indica 1 día, 24 horas. El -1 significa los archivos creados o modificados en el último día, mientras +1 significa los archivos creados o modificados hace más de un día.
En el siguiente ejemplo, usamos el comando Buscar con la opción -mtime para eliminar los archivos creados o modificados el último día.
encontrar dir2 -type f -mtime -1 -deleteXargs vs -exec
El Xargs El comando casi siempre se implementa con tuberías (pero no necesariamente tiene que) usar el primer comando como argumento. Contrariamente a la tubería, permite el uso del primer comando como argumento y no solo como una salida anterior o comando predecesor.
El siguiente ejemplo en esta sección enumera los archivos y directorios utilizando el LS (Lista) comando y mueve los archivos enumerados a un directorio diferente con MV y Xargs comandos. Este no es el método adecuado para mover los archivos, pero es útil como ejemplo para mostrar cómo Xargs El comando funciona.
Primero, da un vistazo a mi Linuxhintdir directorio. Como puede ver, tenemos 3 archivos: archivo1, archivo2 y archivo3.
LS Dir1 Dir2Ahora, mueva todos los archivos dentro Dir1 a dir2 utilizando el MV dominio.
ls ~/dir1/* | xargs mv -t ~/dir2Como puede ver, el resultado LS ~/Dir1/* fue aprobado por Xargs después de la MV dominio.
El -ejecución El comando es similar a Xargs. Puede ejecutar comandos basados en la salida del primer comando. Contrariamente a Xargs, -ejecución Ejecuta el comando cada vez que un archivo coincide con la condición. Si usamos el comando -exec para eliminar los archivos, los eliminará el archivo por archivo. Mientras que XARGS ejecuta el comando a la vez para todos los archivos coincidentes. Esto hace Xargs un poco más rápido que -exec. Por lo tanto, si está tratando con muchos archivos, Xargs sería conveniente sobre -ejecución.
Conclusión
Linux tiene muchos métodos para lograr la misma tarea. Encontrar y eliminar los archivos con un solo comando es un conocimiento de que cualquier usuario de Linux debería tener independientemente en su experiencia. Este tutorial se centra en encontrar y eliminar los archivos, pero Xargs y -Exec se pueden usar con muchos comandos de Linux. Es importante mencionar que algunas funciones están disponibles solo en el encontrar versión. La mayoría de los consejos explicados son útiles para casi todas las distribuciones de Linux.
Gracias por leer este tutorial explicando cómo encontrar y eliminar los archivos en Linux. Sigue siguiéndonos para obtener más consejos profesionales.