random en bash

pineda

Hola, estoy haciendo un script en bash y no tengo mucha idea. Tenia entendido que tenia que definir una variable con el siguiente comando:

variable1=$RANDOM%10

de este modo conseguiria una variable con un numero aleatorio 'hasta 10' (si lo pongo sin el %10 me lo haría hasta 32767.

El problema es que a continuacion le hago un echo $variable1 y siempre siempre me da el máximo valor posible, nunca varía no se si me explico...

Gracias y un saludo

R

#!/bin/bash

rango=10
let "numero = $RANDOM % $rango"
echo "Numero aleatorio : $numero"
echo

pineda

Lo que es el scrip si funciona. El problema es que siempre me da el núm. Máximo posible, por lo tanto no es aleatorio... No se si será cosa de fuentes

R

No te entiendo demasiado, siempre te da 10 ? A ver pega el código

pineda

let "num1 = $RANDOM"
echo "num aleatrio: $num1"

con este código siempre me devuelve 17767

R

Es raro, este es el resultado que me da a mi copiando tu codigo en un bucle de 10 :

pineda

Debe ser por un tema fuentes ya que es un suse peladisimo. Lo que no tengo Internet aquí en clase (posteo vía iPhone). Intentare arreglarlo. Muchas gracias !!

erdanblo

fuentes?

B

Seguro que tienes un bash como shell?

erdanblo

Ahora que lo dice #9 SuSe creo que usaba ksh

pero tirando del script de #2 te deberia de ir (si tienes instalado bash).

Usuarios habituales