Powiedz, że masz plik notifications.txt
. Musimy policzyć całkowitą liczbę linii, aby określić zakres generatora losowego:
$ cat notifications.txt | wc -l
Napiszmy do zmiennej:
$ LINES=$(cat notifications.txt | wc -l)
Teraz do wygenerowania liczby od 0
do $LINE
użyjemy RANDOM
zmiennej.
$ echo $[ $RANDOM % LINES]
Napiszmy do zmiennej:
$ R_LINE=$(($RANDOM % LINES))
Teraz musimy tylko wydrukować ten numer wiersza:
$ sed -n "${R_LINE}p" notifications.txt
O firmie 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.
Upewnij się, że plik ma mniej niż 32767 numerów linii. Zobacz to, jeśli potrzebujesz większego generatora losowego, który działa od razu po wyjęciu z pudełka.
Przykład:
$ od -A n -t d -N 3 /dev/urandom | tr -d ' '