Каждый раз, когда этот параметр ссылка, случайное целое число от 0 и 32767. Последовательность случайных чисел могут быть инициализированы путем присвоения значения RANDOM. Если RANDOM не работает, он теряет специальные свойства, даже если это впоследствии reset.
Ответ 2
64 символа символьная строка
randomString32() {
index=0
str=""
for i in {a..z}; do arr[index]=$i; index=`expr ${index} + 1`; done
for i in {A..Z}; do arr[index]=$i; index=`expr ${index} + 1`; done
for i in {0..9}; do arr[index]=$i; index=`expr ${index} + 1`; done
for i in {1..64}; do str="$str${arr[$RANDOM%$index]}"; done
echo $str
}
Ответ 3
shufот Coreutils работает хорошо, если строки не содержат строк новой строки:
printf 'a\nb\nc\n' | shuf -n1
Эмуляция массива POSIX eval + RANDOM
Изменение метода Marty eval для эмуляции массивов (которые не являются POSIX):