Cuanto tiempo tarda un script bash en ejecutarse

Cuanto tiempo tarda un script bash en ejecutarse.

Tal vez pienses que este articulo es a modo de curiosidad, ni mucho menos querido lector, conocer el tiempo de ejecución es algo indispensable en entornos donde se lanzan muchos script y tareas cron para evitar posibles encolamientos y saturación del sistema.

Con el comando time podemos saber (entre otras cosas) cuanto tiempo tarda un script bash desde que comienza hasta que termina, ademas nos aporta el tiempo del usuario y del sistema. Vamos a ver como conseguir estos resultados.

 

Cuanto tiempo tarda un script bash en ejecutarse

Como ejemplo usamos un script de mantenimiento que uso en mis servidores.

Sintaxis:

time [script]

Comando time con script de ejemplo.
time bash libera.sh

El script se ejecuta, cuando termina imprime en pantalla algo similar a lo siguiente…
# datos de ejemplo

real	0m27.529s
user	0m0.074s
sys	0m1.365s

Como puedes ver no ofrece los resultados con microsegundos, los explicamos:
  • real: Explicado de forma brusca, es el tiempo que tarda desde que pulsas la tecla ENTER, hasta que termina todo el proceso.
  • user: Es el tiempo que el usuario (nosotros) a utilizado la CPU.
  • sys: Es el tiempo que la CPU trabaja con el kernel.

También puedes medir el tiempo de cualquier comando, por ejemplo de update, observa…

time yum update

ejemplo de salida…
[root@demo ~]# time yum update
Complementos cargados:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: centos.crazyfrogs.org
 * epel: mirror.freethought-internet.co.uk
 * extras: centos.crazyfrogs.org
 * updates: centos.crazyfrogs.org
No packages marked for update

real	0m3.886s
user	0m0.488s
sys	0m0.063s

Como hemos visto, time es más útil de lo que parece en un principio.

 

Scipt bash libera.sh

Bueno, dejando a un lado el articulo >>Cuanto tiempo tarda un script bash en ejecutarse<<, seguro que más de uno me manda un correo preguntando por el script que utilice en el ejemplo. Es un script bastante simple pero muy útil en el mantenimiento diario de un servidor o vps. Viene de premio con este post, jajaj.

nano libera.sh

Copia y pega lo siguiente.
#libera.sh
#!/bin/bash
#*****Created by SergioG.B.*****
#*****https://www.sololinux.es*****
echo "<---------------------------------------------------------->"
echo "<---------------------------------------------------------->"
# hostnamectl set-hostname sololinux
#
echo "Comprobando estado de memoria"
free
echo "OK - Verificacion completada"
echo "<---------------------------------------------------------->"

sleep 2s; echo “Limpieza de memoria cache y swap“;
echo "<---------------------------------------------------------->"

sleep 2s; echo "Deshabilitando HTTP"
killall -KILL httpd
echo "OK - Http deshabilitado"
echo "<---------------------------------------------------------->"

sleep 1s; echo "Deshabilitando Swap"
swapoff -a
echo "OK - Swap deshabilitado"
echo "<---------------------------------------------------------->"

sleep 2s; echo "Liberando pagecaches, dentries e inodes"
sync;sysctl -w vm.drop_caches=3;sync
echo "OK - Server liberado"
echo "<---------------------------------------------------------->"

sleep 3s; echo "Habilitando la Swap"
swapon -a
echo "OK - Swap habilitado"
echo "<---------------------------------------------------------->"

sleep 3s; echo "Habilitar HTTP y reinciar Nginx/MariaDB"
#systemctl restart mariadb
sleep 1s;
service httpd start
sleep 1s;
service nginx restart
echo "OK - Todo habilitado"
echo "<---------------------------------------------------------->"

sleep 3s; echo "Reiniciar-habilitar Memcached"
chkconfig memcached on
service memcached restart
service memcached start
echo "OK - Memcached habilitado"
echo "<---------------------------------------------------------->"
#service ddos restart
sleep 2s; echo "Verificacion rutinario"
echo "Script libera sh"
echo "Created by SergioG.B."
echo "https://www.sololinux.es"
echo "<---------------------------------------------------------->"

sleep 2s; free
echo ".....TODO CORRECTO....."
echo "<---------------------------------------------------------->"
echo "<---------------------------------------------------------->"

Lo modificas según tus necesidades.

Guarda el script, y cierra el editor. Lo ejecutas y listo.

 

Canales de Telegram: Canal SoloLinux – Canal SoloWordpress

Espero que este articulo te sea de utilidad, puedes ayudarnos a mantener el servidor con una donación (paypal), o también colaborar con el simple gesto de compartir nuestros artículos en tu sitio web, blog, foro o redes sociales.

 

Agregar comentario