Script que te recuerda la hora

8 08 2008

Me pasa bastante que programando se me van las horas volando, lo que se ocurrio para recordar que hora es, crear un script que me recuerde que hora es 😛

Primero que todo se necesita el comando notify-send que es como un popup (cuando ubuntu te avisa que tiene actualzaciones), se instala desde los repositorios:

sudo aptitude install libnotify-bin

Luego crear un archivo donde va a estar el script 😛 , a mi gusto siempre creo una carpeta dentro de mi home que se llama Scripts donde se pueden crear todas lo que nos plazca 😀

gedit /home/<usuario>/Scripts/time_reminder

Nota: Hay que reemplar <usuario> por tu usuario.

Insertamos el siguiente codigo dentro:

#!/bin/bash

TITLE="Hora actual"
ICON="appointment"
MSG="Son las $(date +%r)"
export DISPLAY=:0 && \
notify-send --icon="$ICON" "$TITLE" "$MSG" && \
aplay /usr/share/sounds/ekiga/voicemail.wav

Explico cada linea:

  • La primera linea en cada shell script dices donde esta el interprete (el que va a ejecutar tu script)
  • La linea TITLE que se desea fijar en el popup
  • La linea ICON, ésta linea tiene truco, ese nombre que puse ahi se debe que en la carpeta /usr/share/icons/Tango/34×34/ (yo uso tango puede ser Tanguerine) tienen nombres de iconos que usa el sistema (Gnome default en ubuntu) el cual seleccione uno que concuerde con mi objetivo, no se necesita poner toda la ruta ni la extesion.
  • La linea de MSG es la hora que quiero mostrar y recordar 😉
  • luego viene el comando export…., lo que hace es seleccionar la pantalla actual porque las tareas (mas adelante explico) programadas no entienden de comando que tengan que ver con interfaces gráficas, si se tienen dos monitores ese comando tiene que cambiar para que concuerde.
  • La siguiente linea es el popup, que es donde mostramos el mensaje con las variables que anteriormente definimos.
  • por ultimo un sonido de recordatorio, en ubuntu esos vienen por default al menos que se haya desinstalado Ekiga, el cua en la carpeta /usr/share/sounds/ hay varios donde escoger.

Ahora se le da al script permisos de ejecucion:

chmod +x /home/<usuario>/Scripts/time_reminder

Ahora solo falta ejecutar el script cada cierto tiempo, para eso está crontab y se modifica la lista del usuario nuestro:

crontab -e

Para ingresar la linea se presiona la tecla insert o bien la letra i

00 * * * * /home/edder/Scripts/time_reminder

Se preciona Escape luego :wq, con eso se sale del editor y lo que quere decir esos 00 es que se va a ejecutar cada hora, se puede modificar a 30 para que se ejecute cada 30 minutos.

Con eso solo hace falta esperar 😉

Anuncios

Acciones

Information

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s




A %d blogueros les gusta esto: