[Solar-general] La Plata: 2do. Business & Innovation Trends el próximo 11 de agosto
Marcos Guglielmetti
marcospcmusica en gmail.com
Mie Jul 30 22:23:36 CEST 2008
El Jueves, 31 de Julio de 2008 03:00, Pablo Manuel Rizzo escribió:
| 2008/7/30 Marcos Guglielmetti <marcospcmusica en gmail.com>:
| > Es un script re sencillo que tira una salida estándar (que kmail
| > está preparado para obtener) en base a lo que lee de ~/firmas/
| >
| > lo hice para mí, así que en otro sistema fallará si no existe
| > esa carpeta y además archivos con:
| >
| >
| > cabecera*.txt
| >
| > cola*.txt
| >
| > y el resto de lo que va entre la cabecera y la cola.
| >
| > Es decir que la firma se produce siempre (en general) con 3
| > variables diferentes, dando un resultado que me permite
| > promocionar diversas ideas, sitios y proyectos, sin tener una
| > firma enorme.
| >
| >
| > Este es el engendro mutante:
| >
| > #!/bin/sh
| >
| > # FRASES 0-9
| > Azar=`ls ~/firmas/ | grep -v "~"`
| >
| > azar1=($Azar)
| > num_Azar1=${#azar1[*]}
| > AZAR1="${azar1[$((RANDOM%num_Azar1))]}"
| >
| >
| > Azarcola=`ls ~/firmas/cola*.* | grep -v "~" | grep -v "cabe"`
| > azar1cola=($Azarcola)
| > num_Azar1cola=${#azar1cola[*]}
| > AZAR1cola="${azar1cola[$((RANDOM%num_Azar1cola))]}"
| >
| > Azarhead=`ls ~/firmas/cabece*.* | grep -v "~"`
| > azar1head=($Azarhead)
| > num_Azar1head=${#azar1head[*]}
| > AZAR1head="${azar1head[$((RANDOM%num_Azar1head))]}"
| >
| > #echo $AZAR1head
| > #echo $AZAR1cola
| > #sleep 2s
| >
| > # cabecera
| > cat $AZAR1head > ~/firmas/firma.txt
| >
| > cat ~/firmas/$AZAR1 >> ~/firmas/firma.txt
| >
| > # cola
| > cat $AZAR1cola >> ~/firmas/firma.txt
| >
| > # esto produce la salida final, que toma kmail
| > cat ~/firmas/firma.txt
|
| Buenísimo, agregale al final esto:
|
| cat ~/.signature
|
| y sirve también para los otros clientes de correo que te decía
| antes :-)
|
| Se puede cronear cada un minuto en cualquier sistema y minuto a
| minuto va a poner una firma diferente.
Claro (yo antes lo tenía así), la diferencia es que mediante este
método y kmail, el script no se ejecuta todo el tiempo, sino sólo
cuando en kmail hacés click en "nuevo mensaje" o respondés un mail.
No es tanta diferencia, pero es algo más "económico".
Lo que habría que agregar para lo que que decís es
cat ~/firmas/firma.txt > ~/.signature
(yo no uso otros clientes, pero bueno...)
Lo que sí me gustaría saber, es cómo simplificar, si se pudiera, la
generación del azar en bash, al menos para este caso
Azar=`ls ~/firmas/ | grep -v "~"`
azar1=($Azar)
num_Azar1=${#azar1[*]}
AZAR1="${azar1[$((RANDOM%num_Azar1))]}"
no entiendo por qué "hay que dar" tantas vueltas para leer al azar un
archivo desde una lista...
--
Marcos Guglielmetti - www.musix.org.ar Software Libre para Artistas
"Revolución práctica, los amigos y colegas con quienes he estado
trabajando durante los últimos 20 años lo han demostrado, la
revolución práctica se basa en dos cosas: prueba de concepto y código
funcionando.
Es decir: hazlo primero y permite que las consecuencias de lo que se
ha hecho se establezcan. La tecnología, a diferencia del flujo
histórico hegeliano o marxista, la tecnología en sí es
irreversible. "
Eben Moglen, FSF.
http://www.mastermagazine.info/articulo/13220.php-----------------------------------------------
Blog personal: www.marcospcmusica.wordpress.com
Más información sobre la lista de distribución Solar-general