[haiku-es] Leer datos aleatorios de un archivo con bash script. (Alguien sabe?) (ME AUTORESPONDO XD)

  • From: gmail <tanausugomez@xxxxxxxxx>
  • To: haiku-es@xxxxxxxxxxxxx
  • Date: Fri, 27 Mar 2009 13:26:31 +0100

Al final he decidido hacerlo de otra manera, descarga el haiku del rincondelhaiku.org que tienen uno diario, luego lo muestra en un alert:


El codigo es el siguiente por si alguien lo kiere (Advierto que es penoso xD)

-------------
#!/bin/bash
#Tanausu Gomez Garcia
#tanausugomez@xxxxxxxxx


   #Paso1, Descarga la página principal de elrincondelhaiku y
       wget http://www.elrincondelhaiku.org/index_cont.php
   #filtra la web hasta dejar solo la linea del haiku diario
       cat index_cont.php | grep "textoVerdeCursiva" >> paso1
   #luego elimina la página descargada.
       rm index_cont.php



#Paso 2, filtra la linea del haiku y la limpia de código dejando solo el haiku, va generando archivos y borrando cuando termina. cat paso1 | sed -e 's/<td align="left" colspan="2" class="textoVerdeCursiva">//' >> paso2
rm paso1
       cat paso2 | sed -e 's/<br>/,/' >> paso3
rm paso2
       cat paso3 | sed -e 's/:<br>/,/' >> paso4
rm paso3
       cat paso4 | sed -e 's/>/,/' >> paso5
rm paso4
       cat paso5 | sed -e 's/</,/' >> paso6
rm paso5
       cat paso6 | sed -e 's/td/,/' >> paso7
rm paso6

   #Elimina las comas y el / que antes no podia con el sed y borra paso7
linea1=$(cut -d ',' -f 1 paso7)
linea2=$(cut -d ',' -f 2 paso7)
linea3=$(cut -d ',' -f 3 paso7
cut -d '/' -f 4 paso7)
rm paso7

#Se crea un ultimo archivo en el que se escriben las lineas en mayusculas, se guarda esto en una variable y se borra el ultimo archivo.
echo $linea1 >> paso8
echo $linea2 >> paso8
echo $linea3 >> paso8

mensaje=$(tr [a-z] [A-Z] < paso8)
rm paso8

   #Paso3, Muestra el alert con el haiku.
alert --idea "El haiku de hoy es:

$mensaje"
exit
-------------------

En fin, estoy aprendiendo mucho de bash ultimamente :-)

Other related posts: