Recientemente descubrí una interesante variable bash, $RANDOM, que como muy bien su nombre indica, devuelve un número aleatorio entre 0 y 32767 cada vez que es llamada. Un ejemplo visual resulta más sencillo,
shell> echo $RANDOM 3721
Por supuesto, este número no es que nos sirva de mucho, ya que tomar decisiones en función de él es un poco complicado. Para hacerlo más útil, vamos a aplicarle el módulo, para que el valor devuelvo nos sirva ya de algo.
Por ejemplo, aplicando el módulo 2, tendremos una salida entre 0 y 1, por lo que nos serviría en un script para que se ejecute, según estadística, la mitad de las veces.
shell> echo $((RANDOM%2)) 1 shell> echo $((RANDOM%2)) 0
El módulo lo podemos aplicar sobre cualquier número, según el resultado que no interese.
Para ver que el ejemplo es más o menos real, nos fijamos en la siguiente salida,
shell> for i in {1..10000} ; do echo "$((RANDOM%2))"; done | sort | uniq -c 4992 0 5008 1
Si os interesan valores aleatorios en bash, $RANDOM es vuestra variable.
No hay comentarios :
Publicar un comentario