Disons que vous avez un fichier notifications.txt
. Nous devons compter le nombre total de lignes, pour déterminer la plage du générateur aléatoire:
$ cat notifications.txt | wc -l
Permet d'écrire dans une variable:
$ LINES=$(cat notifications.txt | wc -l)
Maintenant, pour générer un nombre de 0
à $LINE
nous utiliserons une RANDOM
variable.
$ echo $[ $RANDOM % LINES]
Permet de l'écrire dans une variable:
$ R_LINE=$(($RANDOM % LINES))
Il ne nous reste plus qu'à imprimer ce numéro de ligne:
$ sed -n "${R_LINE}p" notifications.txt
À propos de RANDOM:
RANDOM Each time this parameter is referenced, a random integer between
0 and 32767 is generated. The sequence of random numbers may be
initialized by assigning a value to RANDOM. If RANDOM is unset,
it loses its special properties, even if it is subsequently
reset.
Assurez-vous que votre fichier comporte moins de 32767 numéros de ligne. Voyez ceci si vous avez besoin d'un plus grand générateur aléatoire qui fonctionne hors de la boîte.
Exemple:
$ od -A n -t d -N 3 /dev/urandom | tr -d ' '