Menghasilkan angka acak dalam bash dengan contoh

Menghasilkan angka acak dalam bash dengan contoh

Saat mengkode skrip bash - terutama saat mengembangkan skrip untuk pengujian fungsionalitas - kadang -kadang kita perlu menghasilkan nomor acak atau input acak. Angka -angka ini mungkin juga perlu berada dalam kisaran tertentu. Artikel ini akan mengajari Anda cara melakukan pembuatan angka acak di Bash.

Dalam tutorial ini Anda akan belajar:

  • Cara menghasilkan angka acak dalam pesta
  • Cara Menghasilkan Angka Acak adalah rentang tertentu
  • Contoh yang menunjukkan pembuatan bilangan acak dalam pesta bash
Menghasilkan angka acak dalam bash dengan contoh

Persyaratan dan konvensi perangkat lunak yang digunakan

Persyaratan Perangkat Lunak dan Konvensi Baris Perintah Linux
Kategori Persyaratan, konvensi atau versi perangkat lunak yang digunakan
Sistem Distribusi Linux-independen
Perangkat lunak Baris perintah bash, sistem berbasis Linux
Konvensi # - mengharuskan Linux -Commands untuk dieksekusi dengan hak istimewa root baik secara langsung sebagai pengguna root atau dengan menggunakan sudo memerintah
$-mengharuskan Linux-Commands untuk dieksekusi sebagai pengguna biasa

Contoh 1: Menghasilkan nomor acak menggunakan generator acak



Mari kita hasilkan nomor acak dalam bash:

$ echo $ acak 24758 $ echo $ acak 13 

Itu sederhana bukan?

Ada beberapa tantangan dengan pendekatan ini; itu tidak terlalu bermanfaat seperti itu: nomor acaknya bisa 1 atau 32000. Yang juga patut diperhatikan adalah bahwa sementara angka yang dikembalikan tampaknya acak, sebenarnya dipengaruhi oleh bagaimana variabel entropi acak (Acak =) diinisialisasi. Ini akan menjadi fokus untuk artikel lain. Contoh cepat tentang bagaimana Anda bisa membuatnya lebih acak;

$ Acak = 1 $ echo $ acak 16807 $ acak = 1 $ echo $ acak 16807 $ acak = $ (tanggal +%s%n | cut -b10-19) $ echo $ acak 18991 $ acak = $ (tanggal +%s %N | cut -b10-19) $ echo $ acak 11045 

Perhatikan bahwa nomor acak 16807 tidak benar -benar acak, karena generator acak diunggulkan dengan hal yang sama 1.

Itu Acak = $ (tanggal +%s%n | cut -b10-19) Perintah adalah seeder entropi generator acak yang jauh lebih baik berdasarkan waktu kedua dan nanosecond.

Contoh 2: Angka dalam kisaran

Memilih nomor acak dalam kisaran sederhana. Mari kita hasilkan angka acak antara 1 dan 113:

$ echo $ (($ acak % 113 + 1)) 50 $ echo $ (($ acak % 113 + 1)) 17 $ echo $ (($ acak % 113 + 1)) 95 

Dan kami juga dapat menggunakan sintaks/perintah alternatif. Kali ini kami akan menghasilkan angka acak antara 1 dan 117:

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

Untuk meningkatkan minimum kisaran yang diberikan, Anda dapat dengan mudah meningkatkan +1 ke angka yang lebih tinggi.

Harap pertimbangkan contoh berikut, menghasilkan angka acak antara 11 dan 30:

$ echo $ [$ acak % 20 + 11] 21 

Kesimpulan

Dalam artikel ini, kami belajar cara menghasilkan nomor acak dalam bash, dalam kisaran pilihan apa pun. Kami juga menyentuh secara singkat tentang bagaimana keacakan dalam Bash bekerja melalui generator acak yang diinisialisasi dengan biji entropi.

Tunjukkan beberapa dari Anda $ Acak kreasi di komentar di bawah! Menikmati!

Tutorial Linux Terkait:

  • Menangani input pengguna dalam skrip bash
  • Hal -hal yang harus diinstal pada ubuntu 20.04
  • Cara Mengatur Server OpenVPN di Ubuntu 20.04
  • Pengantar Otomatisasi Linux, Alat dan Teknik
  • Menguasai loop skrip bash
  • Loop bersarang dalam skrip bash
  • Hal -hal yang harus dilakukan setelah menginstal ubuntu 20.04 FOSSA FOSSA Linux
  • Daftar Alat Linux Kali Terbaik untuk Pengujian Penetrasi dan ..
  • Mint 20: Lebih baik dari Ubuntu dan Microsoft Windows?
  • Sistem Linux Hung? Cara melarikan diri ke baris perintah dan…