Feliz Ramadán
|
|
Por atordo
departamento Cuando el diablo se aburre... , Sección Diarios Puesto a las Fri Oct 15th, 2004 at 06:25:54 PM CET
|
|
En diferentes épocas y lugares, el ser humano ha ideado diversas formas de medir el tiempo. Existen multitud de aplicaciones para recordarnos fechas importantes en nuestro calendario gregoriano pero, ¿qué pasa si queremos acordarnos de una fecha de un calendario diferente?
|
Pues lógicamente también existen programas que usan calendarios diferentes del único calendario verdadero. En el script de hoy he usado hebcal y hcal para poder enterarme de las fechas señaladas de otras culturas. El objetivo del script es mandar un aviso cuando sea año nuevo judío y musulmán, Yom Kippur y primero de Ramadán. Para enviar el aviso he elegido una versión modificada de sJab que publiqué en una entrada anterior de mi diario, pero puede sustituirse fácilmente para enviar (por ejemplo) un correo cambiando la función aviso.
#!/usr/bin/perl
#
# Enviar avisos en fechas señaladas
#
use strict;
use POSIX qw(strftime);
my @cal=('/usr/local/bin/hdate','/usr/local/bin/hebcal');
my $i;
my $dma=strftime("%m/%d/%Y",localtime);
for ($i=0;$i<=$#cal;$i++) {
open (CAL, "$cal[$i] 2>&1 |") || warn ("No puedo ejecutar $cal[$i]\n");
while (<CAL>) {
if (m/(\d+\/\d+\/\d+) Rosh Hashana (\d+)/) {
&aviso ("Hoy es Rosh Hashana $2") if ($1 eq $dma);
}
elsif (m/(\d+\/\d+\/\d+) Yom Kippur/) {
&aviso ("Hoy es Yom Kippur") if ($1 eq $dma);
}
&aviso ("Feliz $1") if (m/\w+ 1 MuHarram (\d+) A\.H\./);
&aviso ("Hoy es 1 de Ramadan $1") if (m/\w+ 1 RamaDHaan (\d+) A\.H\./);
}
close (CAL);
}
sub aviso {
my $msj=shift;
system("$/ruta/sJab -u remitente -p contraseña -t destinatario -q 'Fecha importante' -m '$msj' > /dev/null");
}
Ya sólo queda añadirlo al crontab:
@daily /usr/bin/perl /ruta/nombre.pl
¿Me dará el Compasivo las fuerzas suficientes para no caer en mis excesos etílicos este viernes, primero de Ramadán de 1425? |
|
|