Случайное значение переменной из списка - PullRequest
2 голосов
/ 07 мая 2019

Я пытаюсь создать простой скрипт, который рандомизирует данные. Я сделаю это очень просто.

Допустим, у меня есть следующие данные внутри data.txt: 11 222 333 4444 55555

Так что в основном некоторые числа разделены пробелом. Я хочу добавить буквы от a до h после каждой цифры. Произвольно выбирается из массива или из файла.

Проблема в том, что после выполнения скрипта я получаю одно и то же значение переменной после каждой буквы.

Ожидаемый результат: 1a1b 2f2a2e 3e3b3d 4a4g4h4c 5a5d5f5a5c

Что я получаю: 1g1g g2g2g2g g3g3g3g g4g4g4g4g g5g5g5g5g5

Сценарий выглядит так:

#!/bin/bash
letters=("a" "b" "c" "d" "e" "f" "g" "h")
random=$(shuf -i 1-9999 -n 1)
result=${letters[$random % ${#letters[@]}]}
result2=$(awk '$1=$1' FS= OFS="$result" $1)
echo $result2;
...