Gerando números aleatórios em festas com exemplos

Gerando números aleatórios em festas com exemplos

Ao codificar scripts bash - especialmente ao desenvolver scripts para testes de funcionalidade - às vezes precisamos gerar um número aleatório ou entrada aleatória. Esses números também podem precisar estar dentro de um intervalo específico. Este artigo ensinará como realizar geração de números aleatórios em bash.

Neste tutorial, você aprenderá:

  • Como gerar números aleatórios em bash
  • Como gerar números aleatórios é um intervalo específico
  • Exemplos demonstrando geração de números aleatórios em Bash
Gerando números aleatórios em festas com exemplos

Requisitos de software e convenções usadas

Requisitos de software e convenções de linha de comando Linux
Categoria Requisitos, convenções ou versão de software usada
Sistema Independente da distribuição Linux
Programas Linha de comando Bash, sistema baseado em Linux
Convenções # - requer que o Linux -Commands seja executado com privilégios de raiz diretamente como usuário root ou por uso de sudo comando
$-exige que o Linux-Commands seja executado como um usuário não privilegiado regular

Exemplo 1: Gerando um número aleatório usando o gerador aleatório



Vamos gerar um número aleatório em Bash:

$ echo $ aleatória 24758 $ eco $ aleatórios 13 

Isso era simples, não era?

Existem alguns desafios com essa abordagem; Não é muito utilizável como está: o número aleatório pode ser 1 ou 32000. Também digno de nota é que, embora o número retornado pareça aleatório, ele é realmente influenciado por como a variável de entropia aleatória (Aleatório =) é inicializado. Este será o foco para outro artigo. Um exemplo rápido de como você pode torná -lo mais aleatório seria;

$ Aleatória = 1 $ echo $ aleatória 16807 $ aleatória = 1 $ echo $ aleatória 16807 $ aleatória = $ (data +%s%n | corte -b10-19) $ echo $ aleatório 18991 $ aleatórios = $ (data +%s %N | corte -b10-19) $ echo $ aleatório 11045 

Observe que o número aleatório 16807 não é realmente tão aleatório, pois o gerador aleatório foi semeado com o mesmo 1.

O Random = $ (Data +%S%N | Cut -B10-19) O comando é um semeador de entropia de gerador aleatório muito melhor com base no segundo e no tempo de nanossegundos.

Exemplo 2: números em um intervalo

Selecionar números aleatórios em um intervalo é simples. Vamos gerar um número aleatório entre 1 e 113:

$ echo $ (($ aleatória % 113 + 1)) 50 $ echo $ (($ aleatória % 113 + 1)) 17 $ echo $ (($ aleatória % 113 + 1)) 95 

E também podemos usar uma sintaxe/comando alternativo. Desta vez, geraremos um número aleatório entre 1 e 117:

$ echo $ [$ Random % 117 + 1] 113 $ echo $ [$ Random % 117 + 1] 71 $ echo $ [$ Random % 117 + 1] 10 

Para aumentar o mínimo de um determinado intervalo, você pode simplesmente aumentar o +1 para um número maior.

Por favor, considere o exemplo a seguir, gerando um número aleatório entre 11 e 30:

$ echo $ [$ aleatória % 20 + 11] 21 

Conclusão

Neste artigo, aprendemos a gerar um número aleatório em Bash, em qualquer faixa preferida. Também tocamos brevemente sobre como a aleatoriedade em Bash funciona através de uma semente de entropia geradora aleatória inicializada.

Mostre -nos alguns dos seus $ Aleatório criações nos comentários abaixo! Aproveitar!

Tutoriais do Linux relacionados:

  • Manipulando a entrada do usuário em scripts bash
  • Coisas para instalar no Ubuntu 20.04
  • Como configurar um servidor OpenVPN no Ubuntu 20.04
  • Uma introdução à automação, ferramentas e técnicas do Linux
  • Mastering Bash Script Loops
  • Loops aninhados em scripts de basquete
  • Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
  • Lista das melhores ferramentas Kali Linux para testes de penetração e…
  • Mint 20: Melhor que o Ubuntu e o Microsoft Windows?
  • Sistema Linux Hung? Como escapar para a linha de comando e…