Я хочу заменить определенный символ «M» в строке текста на «A» или «T». Выбор замены на «А» или «Т» должен происходить случайным образом для каждого «М» в строке текста.
Я пытался написать скрипт, используя sed для этого, но оценка случайного выбора «A» или «T» происходит только один раз на всей строке, а не при каждой замене. Мой скрипт выглядит так:
#!/bin/bash
ambM[0]=A
ambM[1]=T
file_in=${1?Error: no input file}
cat $file_in | sed "s/M/${ambM[$[$RANDOM % 2]]}/g"
Но если я использую это с файлом, который состоит из одной строки "M":
MMMM
Я получу либо все "А"
AAAA
Или все "Т"
TTTT
Есть ли что-нибудь, что можно сделать, чтобы заставить эту работу работать с sed? Или, может быть, эквивалентный способ сделать это с помощью awk? Спасибо за любую помощь!