Uso de gerador aleatório:
O número aleatório ou um intervalo de números aleatórios podem ser gerados usando a variável de $ aleatória. Ele gera um número aleatório entre 0 e 32767 por padrão. Mas você pode definir o intervalo de números para gerar números aleatórios dividindo o valor de $ aleatórios com um valor específico. Diferentes usos da variável aleatória $ para gerar números aleatórios são mostrados na próxima parte do tutorial.
Geração de números aleatórios usando $ Random Variable:
As maneiras de gerar o número aleatório no terminal e executar um arquivo de script são mostradas aqui.
A. Gerar números aleatórios do terminal
Execute o seguinte comando para gerar um número aleatório dentro do intervalo de 0 a 32767.
$ echo $ aleatório
Você pode gerar um número aleatório de um intervalo específico dividindo a variável Random $ com um valor específico e obtendo o valor do restante. Execute o seguinte comando para gerar um número aleatório dentro da faixa de 1 a 50. Aqui, os primeiros suportes duplos com $ foram usados.
$ echo $ (($ aleatória % 50 + 1))
Execute o seguinte comando para gerar um número aleatório dentro da faixa de 10 a 40. Aqui, o terceiro suporte com $ foi usado.
$ echo $ [$ aleatória % 40 + 10]
B. Gerar números aleatórios usando o script
Crie um arquivo bash com o seguinte script para gerar um número aleatório do intervalo específico, onde os valores mínimo e máximo de intervalo serão obtidos do usuário. Uma mensagem de erro será exibida se o valor máximo tomado for menor que o valor mínimo. Se a diferença entre o máximo e o valor mínimo for 1, outra mensagem de erro será exibida. Um número aleatório será gerado em cada execução deste script se os valores mínimos e máximos válidos serão tomados como entrada.
#!/BIN/BASH
# Gere um intervalo de base aleatoriamente definido pelo usuário
#Tome o valor inferior e o valor superior do usuário
eco "Digite o valor mínimo:"
Leia o mínimo
eco "Digite o valor máximo:"
Leia o máximo
#Verifique os valores tomados são válidos
se [[$ maximum < $minimum ]]; then
eco "o valor máximo não pode ser menor que o valor mínimo"
saída 1
fi
#Come a diferença entre os números
diff = $ (($ maximum- $ mínimo))
#Verifique o valor da diferença
se [[$ diff == 1]]; então
eco "a faixa de números deve ser superior a 1"
saída 1
fi
#Genere o número aleatório
RandomNumber = $ (($ Mínimo + $ Random % $ MAXIMUM))
#Print O número gerado
eco "O número aleatório gerado é: $ RandomNumber"
A saída a seguir aparecerá se o script for executado várias vezes. Aqui, o script acima foi executado três vezes. A mensagem de erro foi impressa para as duas primeiras execuções para entrada inválida, e um número aleatório foi gerado para a última execução.
Geração de números aleatórios usando o comando 'shuf':
Usar o comando 'shuf' é outra maneira de gerar o número aleatório de um intervalo específico. As maneiras de gerar um número aleatório do terminal e usar um script foram mostradas neste tutorial.
A. Gerar números aleatórios do terminal
Execute o seguinte comando para gerar um número aleatório entre 0 e 50 usando o comando 'shuf'.
$ shuf -i 0-50 -n1
De acordo com a saída a seguir, o comando acima foi executado três vezes e três números aleatórios foram gerados.
B. Gerar números aleatórios usando o script
Crie um arquivo bash com o seguinte script para gerar uma lista de números aleatórios com base no valor de entrada. O loop 'para' foi usado para executar o comando 'shuf' várias vezes para gerar a lista de números aleatórios entre 1 a 100 e imprimir os números.
#!/BIN/BASH
# Gere um comando aleatório usando 'shuf'
eco "Quantos números aleatórios você deseja gerar?: "
Número de leitura
#Print Os números aleatórios gerados
eco "Os números aleatórios gerados são:"
para n em 'seq "$ número"'
fazer
RandomNumber = $ (shuf -i 1-100 -N1)
eco $ RandomNumber
feito
A saída a seguir mostra que 5 foi tomado como o valor de entrada e 5 números aleatórios foram gerados, que não são superiores a 100 e não menos que 1.
Geração de números aleatórios usando /dev /urandom:
O /dev /urandom pode ser usado com comandos diferentes para gerar diferentes tipos de valores aleatórios. Não pode ser usado para especificar os valores do intervalo como o comando 'shuf' e $ aleatio. Mas o número de dígitos do número aleatório pode ser definido no comando com /dev /urandom. O uso do comando 'OD' com /dev /urandom mostrou na próxima parte deste tutorial. Este comando pode ser usado para especificar o número de bytes em que cada byte pode ser definido por um número decimal dentro de 0 a 255.
Execute o seguinte comando para gerar um número aleatório entre 0 e 255.
$ od -a n -t d -n 1 /dev /urandom
A saída mostra que o comando acima foi executado três vezes e três números aleatórios diferentes foram gerados aqui, onde os valores não são mais de 255.
Conclusão:
Três maneiras diferentes de gerar números aleatórios foram explicados neste tutorial usando vários exemplos. O codificador pode gerar uma gama específica de números aleatórios usando o comando $ aleatórios ou 'shuf' em bash. O codificador pode usar /dev /urandom com qualquer outro comando para gerar um número aleatório de bytes ou comprimentos específicos. Gerar números aleatórios é um requisito muito comum para a programação, e espero que os leitores possam gerar um número aleatório com base em seus requisitos depois de ler este tutorial.