Wie generiert man in der Bash eine Zufallszahl innerhalb eines Bereichs?
Antworten
Zu viele Anzeigen?bash 5.1 führt eine neue Variable ein, SRANDOM
die ihre Zufallsdaten von der Entropie-Engine des Systems erhält und daher nicht linear ist und nicht erneut gesät werden kann, um eine identische Zufallsfolge zu erhalten. Diese Variable kann als Ersatz verwendet werden für RANDOM
zur Erzeugung mehr zufällig Zahlen.
$ echo $((1 + SRANDOM % 10))
4
Ich habe mehrere Artikel darüber geschrieben.
- https://linuxconfig.org/generating-random-numbers-in-bash-with-examples
- https://linuxconfig.org/random-entropy-in-bash
-
https://www.cloudsavvyit.com/7572/how-to-generate-better-random-numbers-at-the-bash-command-line/
$ RANDOM=$(date +%s%N | cut -b10-19) $ echo $(( $RANDOM % 113 + 13 ))
Dies ergibt eine Zahl zwischen 13 und 125 (113-1+13), mit einer angemessenen Zufallsentropie.