[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [OT]¿No se pueden comparar horas en bash?.



El Martes, 5 de Julio de 2005 16:29, Pablo Braulio escribió:
|| Hola a todos.
|| Estoy tratando de hacer un sencillo script para que haga una determinada
|| función dependiendo de la hora que sea.
|| La finalidad es dada una hora en una variable, la compare con la hora
|| actual y si está última es superior, ejecute. Pero no consigo hacer que lo
|| compare. No soy ningún experto en bash, a lo mejor estoy muy equivocado,
|| por eso lo planteo.
|| Pego el script.
||
|| #/bin/bash
||
|| HORA_ACT=`date |awk {'print $4'}`
|| HORA_MAX="19:00:00";
||
|| if $HORA_ACT < $HORA_MAX ;then echo "es pronto"; else echo "ya es tarde";
|| fi
||
|| Esto no es mas que la primera prueba, luego cambio los "echo" por la
|| ejecución que me interesa. Pero el resultado es este.
||
|| line 6: 19:00:00: No existe el fichero o el directorio
|| ya es tarde


Me temo que BASH no contempla variables de tipo TIME como lo pueden hacer 
otros lenguajes tipo PHP o SQL.

La solución sería definir a conciencia una función que compare dos horas, la 
cual debería comparar primero la cifra o cifras anteriores a los dos puntos y 
en caso de empate seguir con la/las siguiente/s. Un tostón, vamos.

Tal vez podrías usar lenguajes PHP en línea de comandos (hay que instalar no 
recuerdo qué paquete), y no sé muy bien cómo integrarlo o usarlo desde tu 
script de BASH.

Suerte.

-- 
que a mí ni me va ni me viene... pero por comentar...



Reply to: