Decir la hora en palabras (v1)

Nombre: decir-hora.sh
Autor Original: Blakeyed
Correcciones: Devoto, ratakruel
Lenguaje: Bash
Versión: v1
Licencia: GPL
Propósito: Utilidad
Dependencias: espeak

Este script es perfecto si disponemos de un servidor sin entorno gráfico y unas buenas bocinas , entonces deseamos saber la hora, leer la hora en modo texto suele resultar aburrido y algo monótono.

Pero que mejor forma que alguien nos diga la hora al preguntársela ¿verdad?.

Necesitamos tener instalado espeak, el cual lo instalamos desde repositorios con:

apt-get install espeak

Ahora escribimos dentro de nuestro editor de texto favorito lo siguiente:

#!/bin/bash

hora=`date +%H`
min=`date +%M`

decir="Son las "$hora" horas con "$min" minutos" 

echo $decir | espeak -ves -s140 -p30

Guardamos con algún nombre por ejemplo "decir-hora"
Damos permisos de ejecución con:

chmod a+x decir-hora

Si lo deseamos podemos moverlo o copiarlo a /usr/local/bin, ahora podemos invocarle con un:

decir-hora

Si asociamos este script a una combinación de teclas, por los altavoces nos dirá la hora que es. Es muy útil en ocasiones. A partir de aquí se puede extender tanto como se quiera: por ejemplo para que diga la hora en un lenguaje más coloquial: Son las tres menos cuarto, por ejemplo.

Como este ejemlo, en el que deseamos que el script nos diga la hora en formato de 12 horas.

#!/bin/bash

hora=`date +%H`
min=`date +%M`

if [ $hora > 12 ]
then
        hora=$[ hora - 12 ]
        decir="bienvenido, son las $hora horas con $min minutos de la tarde"
elif [ $hora = 1 ]
then
        decir="bienvenido, son la $hora horas con $min minutos"
else
        decir="bienvenido, son las $hora horas con $min minutos"
fi
echo "$decir" | espeak -ves -s140 -p30

Es cuestión de usar la imaginación.

Comentarios

Requiere del sintetizador espeak aunque no debe ser difícil utilizar cualquier otro.

Créditos:


Blackeyed

"Poesía Binaria"