En el siguiente tutorial aprenderás a usar diferentes comandos de la terminal para buscar los archivos más pesados de tu computadora, filtrando la información según los archivos que superen determinado peso. Luego verás como mostrar la información resultante en la terminal y guardarla en un archivo de texto, el cual mostrará la dirección y peso de cada archivo encontrado (ordenados del mas pesado al mas ligero) y, finalmente, si estás de acuerdo con borrar todos los documentos encontrados, te mostraremos como hacerlo rápidamente desde tu terminal.
¡Sigue tutorial para averiguar como lograr nuestro objetivo!
¡Recuerda! es importante que para este tutorial conozcas conceptos como:
Find
Pipes
AND (&&)
Cat
Sort
Ejecución sincrona y asincrona
1. Buscar los archivos mas pesados:
Usa el comando FIND para buscar archivos en tu carpeta.
Selecciona la carpeta donde deseas buscar tus archivos pesados: find Downloads/Prueba
Usa la opción -size del comando FIND para definir el tamaño mínimo de los archivos que deseas filtrar. Para este ejemplo, escogemos un tamaño mínimo de 150kb para buscar solo aquellos archivos que pesen más de 150kb: -size +150k
Usa el comando -exec du -h {} + el cual nos dice:
-exec: indica que los siguientes comandos se ejecutan para cada archivo.
du -h {} +: indica que para cada archivo encontrado se calcule el tamaño “du” y se muestre de forma entendible para los humanos “h”, colocando esta informacion junto a cada uno de los elementos encontrados “{} +”
Tu comando debe quedar como se muestra a continuación donde hemos escogido la carpeta “Prueba” ubicada en descargas para realizar esta actividad:** find Downloads/Prueba -size +150k -exec du -h {} +**
2. Ordenar los archivos del más pesado al más ligero:
Usa el comando SORT para ordenar los archivos, agregando la opción -hr para indicar que la informacion se debe mostrar de forma entendible para los humanos y en reversa (de mayor a menor): sort -hr
Luego, agrega el resultado en un archivo de texto usando >. Para el ejemplo, creamos un archivo de texto en la carpeta de descargas llamado “ArchivosPesados.txt”
Finalmente, usa un PIPE ( | ) para agregar este comando a la linea de comandos que realizaste previamente con el FIND.
Tu comando debe quedar de la siguiente manera: find Downloads/Prueba -size +150k -exec du -h {} + | sort -hr > Downloads/archivosPesados.txt
3. Mostrar la información recopilada:
Usa CAT para mostrar la informacion almacenada en el archivo de texto que acabas de crear.
Finalmente, agrega el comando AND ( && ) para hacer que esta tarea se ejecute solo si se ha cumplido la anterior.
En este punto, ya hemos escrito todos los comandos necesarios para buscar los archivos más pesados, por encima de 150kb, ordenarlos del mas pesado al mas ligero, guardar esa información en un archivo de texto y mostrarlo en la terminal.
Tu comando debe quedar de la siguiente manera:
En tu terminar debes ver información similar a la mostrada en el ejemplo:
4. Eliminar todos los archivos encontrados:
Comprueba que los archivos encontrados no sean relevantes para tu trabajo o tu equipo de computo, en caso de que alguno de ellos lo sea, es mejor que pases a eliminarlos uno por uno con el siguiente comando, en lugar de eliminar todos los archivos encontrados como se propone en este tutorial: rm -i [direccion archivo]
Si todos los archivos encontrados se pueden eliminar sin problemas, entonces usa los comandos AWK y XARGS para eliminar todos los archivos, siguiendo los pasos mencionados a continuación:
Usa AWK para extraer del documento de texto “archivosPesados.txt” únicamente las direcciones de cada archivo, ignorando sus tamaños: awk ‘{print $2}’ Downloads/archivosPesados.txt
awk: comando para extraer información del archivo de texto
{print $2}: comando para seleccionar la segunda columna del archivo de texto, la cual contiene las direcciones en nuestro documento.
Downloads/archivosPesados.txt: como ultimo parámetro, agregamos el archivo de texto del cual queremos extraer la información.
Usa XARGS para tomar la lista de archivos generada por el comando AWK y pasarla al comando rm para eliminar los archivos: xargs rm
Finalmente, une ambas instrucciones con un PIPE para obtener como resultado el siguiente comando: awk ‘{print $2}’ Downloads/archivosPesados.txt | xargs rm
Como resultado, debiste haber eliminado todos los archivos que pesaban mas de 150kb, y puedes usar el archivo de texto para verificar los archivos que fueron eliminados.