Menjana nombor rawak dalam bash dengan contoh

Menjana nombor rawak dalam bash dengan contoh

Semasa pengekodan skrip bash - terutamanya apabila membangunkan skrip untuk ujian fungsi - kadang -kadang kita perlu menghasilkan nombor rawak atau input rawak. Nombor ini juga mungkin perlu berada dalam julat tertentu. Artikel ini akan mengajar anda cara melakukan penjanaan nombor rawak di Bash.

Dalam tutorial ini anda akan belajar:

  • Cara menjana nombor rawak di bash
  • Cara menjana nombor rawak adalah julat tertentu
  • Contoh menunjukkan penjanaan nombor rawak di Bash
Menjana nombor rawak dalam bash dengan contoh

Keperluan perisian dan konvensyen yang digunakan

Keperluan Perisian dan Konvensyen Talian Perintah Linux
Kategori Keperluan, konvensyen atau versi perisian yang digunakan
Sistem Pengedaran linux-bebas
Perisian Baris perintah bash, sistem berasaskan linux
Konvensyen # - memerlukan komando linux untuk dilaksanakan dengan keistimewaan akar sama ada secara langsung sebagai pengguna root atau dengan menggunakan sudo perintah
$-Memerlukan komando linux untuk dilaksanakan sebagai pengguna yang tidak istimewa

Contoh 1: Menjana nombor rawak menggunakan penjana rawak



Mari menghasilkan nombor rawak dalam bash:

$ echo $ rawak 24758 $ echo $ rawak 13 

Itu mudah bukan?

Terdapat beberapa cabaran dengan pendekatan ini walaupun; ia tidak boleh digunakan kerana ia berdiri: nombor rawak boleh 1 atau 32000. Juga patut diberi perhatian adalah sementara nombor yang dikembalikan kelihatan rawak, ia sebenarnya dipengaruhi oleh bagaimana pemboleh ubah entropi rawak (Rawak =) dimulakan. Ini akan menjadi tumpuan untuk artikel lain. Contoh cepat bagaimana anda boleh menjadikannya lebih rawak;

$ Rawak = 1 $ echo $ random 16807 $ random = 1 $ echo $ random 16807 $ random = $ (date +%s%n | cut -b10-19) $ echo $ random 18991 $ random = $ (date +%s %N | potong -b10-19) $ echo $ rawak 11045 

Perhatikan bahawa nombor rawak 16807 tidak benar -benar rawak, kerana penjana rawak telah dibiakkan dengan yang sama 1.

The Rawak = $ (tarikh +%s%n | potong -b10-19) Perintah adalah penyokong entropi penjana rawak yang jauh lebih baik berdasarkan masa kedua dan nanosecond.

Contoh 2: Nombor dalam julat

Memilih nombor rawak dalam julat adalah mudah. Mari menghasilkan nombor rawak antara 1 dan 113:

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

Dan kita juga boleh menggunakan sintaks/perintah alternatif. Kali ini kita akan menjana nombor rawak antara 1 dan 117:

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

Untuk meningkatkan minimum julat tertentu, anda hanya boleh meningkatkan +1 ke bilangan yang lebih tinggi.

Sila pertimbangkan contoh berikut, menghasilkan nombor rawak antara 11 dan 30:

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

Kesimpulan

Dalam artikel ini, kami belajar bagaimana menjana nombor rawak di bash, dalam julat pilihan. Kami juga menyentuh secara ringkas tentang bagaimana rawak dalam Bash berfungsi melalui Benih Entropi Inisialisasi Penjana Rawak.

Tunjukkan kepada kami beberapa anda $ Rawak ciptaan dalam komen di bawah! Nikmati!

Tutorial Linux Berkaitan:

  • Mengendalikan input pengguna dalam skrip bash
  • Perkara yang hendak dipasang di Ubuntu 20.04
  • Cara Menyiapkan Pelayan OpenVPN di Ubuntu 20.04
  • Pengenalan kepada Automasi, Alat dan Teknik Linux
  • Menguasai Gelung Skrip Bash
  • Gelung bersarang dalam skrip bash
  • Perkara yang perlu dilakukan setelah memasang ubuntu 20.04 Focal Fossa Linux
  • Senarai alat Kali Linux terbaik untuk ujian penembusan dan ..
  • Mint 20: Lebih baik daripada Ubuntu dan Microsoft Windows?
  • Sistem Hung Linux? Cara melarikan diri ke baris arahan dan ..