sábado, 27 de enero de 2018

Limpiador de cache y trash de debian/ubuntu

El siguiente script permite limpiar el ordenador



#!/bin/bash
if [ "$(whoami)" != "root" ]
then
  echo "¡Tienes que ejecutar este script como superusuario!"
  exit 1
fi

# Obtener información de memoria
liberarmemoria_antes=$(cat /proc/meminfo | grep MemFree | tr -s ' ' | cut -d ' ' -f2) && liberarmemoria_antes=$(echo "$liberarmemoria_antes/1024.0" | bc)
memoriacache_antes=$(cat /proc/meminfo | grep "^Cached" | tr -s ' ' | cut -d ' ' -f2) && memoriacache_antes=$(echo "$memoriacache_antes/1024.0" | bc)

# Output Information
echo -e "Esta secuencia de comandos borrará la memoria en caché y liberará su ram.\n\nPor el momento tienes $memoriacache_antes MiB cached y $liberarmemoria_antes MiB de memoria liberada."
free -m -h
echo "limpiando";
sudo apt-get autoremove
sudo apt-get autoclean
sudo apt-get clean
echo "Borrando temporales";
rm -vfr /tmp/*
echo "Limpiando la cache";
sudo sync ; echo 3 > /proc/sys/vm/drop_caches
sudo swapoff -a && sudo swapon -a
echo "Limpiando papelera de reciclaje ";
sudo rm -rf ~/.local/share/Trash/*
#  
if [ "$?" != "0" ]
then
  echo "Algo salió mal, es imposible sincronizar el sistema de archivos."
  exit 1
fi

# Borrar el búfer del sistema de archivos usando "sincronización" y Borrar cachés
sync && echo 3 > /proc/sys/vm/drop_caches

freemem_after=$(cat /proc/meminfo | grep MemFree | tr -s ' ' | cut -d ' ' -f2) && freemem_after=$(echo "$freemem_after/1024.0" | bc)

# Output Summary
echo -e "This freed $(echo "$freemem_after - $liberarmemoria_antes" | bc) MiB,  entonces ahora tienes $freemem_after MiB de meoria libre RAM."
free -m -h
exit 0
primero tendremos que darle permisos al script de la siguiente manera:

chmod +x limpiar.sh

ahora lo ejecutamos de la siguiente manera

sudo ./limpiar.sh

nos quedaría de la siguiente manera
listo!!