Isso deve realizar o que você está procurando.
COMMANDS=("command1" "command2" "command3")
$(shuf -n1 -e "${COMMANDS[@]}")
Recebe a matriz e usa shuf para gerar um comando aleatório.
UPDATE: comando shuf alterado por @steeldriver
Eu quero meu script bash para executar o comando aleatório dado abaixo. Por exemplo
[mysterious command] ("command1", "command2", "command3")
Coloque seus comandos em uma matriz.
cmds=( "cmd1" "cmd2" "cmd3" )
$RANDOM é um número aleatório e ${#cmds[@]} avalia o tamanho de sua matriz (3 neste exemplo). $(( RANDOM % ${#cmds[@]} )) será um número aleatório entre 0 e um menor que o comprimento da matriz cmds , ou seja, 0, 1 ou 2.
i=$(( RANDOM % ${#cmds[@]} ))
Fazer o seguinte selecionaria a sequência de $cmds correspondente ao índice $i e a executaria como um comando.
${cmds[i]}
ou tudo de uma só vez (o que parece um pouco horrível):
${cmds[RANDOM % ${#cmds[@]}]}