Bagikan melalui


Get-SecureRandom

Mendapatkan angka acak, atau memilih objek secara acak dari koleksi.

Sintaks

Get-SecureRandom
   [[-Maximum] <Object>]
   [-Minimum <Object>]
   [-Count <Int32>]
   [<CommonParameters>]
Get-SecureRandom
   [-InputObject] <Object[]>
   [-Count <Int32>]
   [<CommonParameters>]
Get-SecureRandom
   [-InputObject] <Object[]>
   [-Shuffle]
   [<CommonParameters>]

Deskripsi

cmdlet Get-SecureRandom mendapatkan angka yang dipilih secara acak. Jika Anda mengirimkan kumpulan objek ke Get-SecureRandom, ia mendapatkan satu atau beberapa objek yang dipilih secara acak dari koleksi.

Tanpa parameter atau input, perintah Get-SecureRandom mengembalikan bilangan bulat yang tidak ditandatangani 32-bit yang dipilih secara acak antara 0 (nol) dan [int32]::MaxValue.

Anda dapat menggunakan parameter Get-SecureRandom untuk menentukan nilai minimum dan maksimum dan jumlah objek yang dikembalikan dari koleksi.

Get-SecureRandom menghasilkan keacakan yang aman secara kriptografis menggunakan kelas RandomNumberGenerator.

Contoh

Contoh 1: Mendapatkan bilangan bulat acak

Perintah ini mendapatkan bilangan bulat acak antara 0 (nol) dan Int32.MaxValue.

Get-SecureRandom

3951433

Contoh 2: Dapatkan bilangan bulat acak antara 0 dan 99

Get-SecureRandom -Maximum 100

47

Contoh 3: Mendapatkan bilangan bulat acak antara -100 dan 99

Get-SecureRandom -Minimum -100 -Maximum 100

56

Contoh 4: Mendapatkan angka floating-point acak

Perintah ini mendapatkan angka floating-point acak yang lebih besar dari atau sama dengan 10,7 dan kurang dari 20,93.

Get-SecureRandom -Minimum 10.7 -Maximum 20.93

18.08467273887

Contoh 5: Mendapatkan bilangan bulat acak dari array

Perintah ini mendapatkan angka yang dipilih secara acak dari array yang ditentukan.

1, 2, 3, 5, 8, 13 | Get-SecureRandom

8

Contoh 6: Mendapatkan beberapa bilangan bulat acak dari array

Perintah ini mendapatkan tiga angka yang dipilih secara acak dalam urutan acak dari array.

1, 2, 3, 5, 8, 13 | Get-SecureRandom -Count 3

3
1
13

Contoh 7: Mengacak seluruh koleksi

Anda dapat menggunakan parameter Shuffle untuk mengembalikan seluruh koleksi dalam urutan acak.

1, 2, 3, 5, 8, 13 | Get-SecureRandom -Shuffle

2
3
5
1
8
13

Contoh 8: Dapatkan nilai non-numerik acak

Perintah ini mengembalikan nilai acak dari koleksi non-numerik.

"red", "yellow", "blue" | Get-SecureRandom

yellow

Contoh 9: Mendapatkan file acak

Perintah ini mendapatkan sampel 50 file yang dipilih secara acak dari drive C: komputer lokal.

$Files = Get-ChildItem -Path C:\* -Recurse
$Sample = $Files | Get-SecureRandom -Count 50

Contoh 10: Gulung dadu adil

Contoh ini menggulung mati adil 1200 kali dan menghitung hasilnya. Perintah pertama, ForEach-Object mengulangi panggilan ke Get-SecureRandom dari pipa dalam angka (1-6). Hasilnya dikelompokkan menurut nilainya dengan Group-Object dan diformat sebagai tabel dengan Select-Object.

1..1200 | ForEach-Object {
    1..6 | Get-SecureRandom
} | Group-Object | Select-Object Name,Count

Name Count
---- -----
1      206
2      199
3      196
4      226
5      185
6      188

Contoh 11: Gunakan parameter Hitung

Anda dapat menggunakan parameter Hitungan tanpa objek pemisah untuk Get-SecureRandom. Contoh berikut mendapatkan tiga angka acak kurang dari 10.

Get-SecureRandom -Count 3 -Maximum 10

9
0
8

Contoh 12: Gunakan parameter InputObject dengan string kosong atau $null

Dalam contoh ini, parameter InputObject menentukan array yang berisi string kosong ('') dan $null.

Get-SecureRandom -InputObject @('a','',$null)

Get-SecureRandom mengembalikan a, string kosong, atau $null. Sengatan kosong ditampilkan sebagai baris kosong dan $null kembali ke perintah PowerShell.

Parameter

-Count

Menentukan jumlah objek acak yang akan dikembalikan. Defaultnya adalah 1.

Saat digunakan dengan InputObject yang berisi koleksi:

  • Setiap item yang dipilih secara acak dikembalikan hanya sekali.
  • Jika nilai Count melebihi jumlah objek dalam koleksi, semua objek dalam koleksi dikembalikan dalam urutan acak.
Jenis:Int32
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-InputObject

Menentukan kumpulan objek. Get-SecureRandom mendapatkan objek yang dipilih secara acak dalam urutan acak dari koleksi hingga angka yang ditentukan oleh Count. Masukkan objek, variabel yang berisi objek, atau perintah atau ekspresi yang mendapatkan objek. Anda juga dapat menyalurkan kumpulan objek ke Get-SecureRandom.

Parameter InputObject menerima array yang dapat berisi string kosong atau $null. Array dapat dikirim ke alur atau sebagai nilai parameter InputObject.

Jenis:Object[]
Position:0
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:False

-Maximum

Menentukan nilai maksimum untuk angka acak. Get-SecureRandom mengembalikan nilai yang kurang dari maksimum (tidak sama dengan). Masukkan bilangan bulat, angka floating-point presisi ganda, atau objek yang dapat dikonversi menjadi bilangan bulat atau ganda, seperti string numerik ("100").

Nilai Maksimum harus lebih besar dari (tidak sama dengan) nilai Minimum. Jika nilai Maksimum atau Minimum adalah angka floating-point, Get-SecureRandom mengembalikan angka floating-point yang dipilih secara acak.

Pada komputer 64-bit, jika nilai Minimum adalah bilangan bulat 32-bit, nilai default Maksimum Int32.MaxValue.

Jika nilai Minimum adalah ganda (angka floating-point), nilai default Maksimum adalah Double.MaxValue. Jika tidak, nilai defaultnya adalah Int32.MaxValue.

Jenis:Object
Position:0
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Minimum

Menentukan nilai minimum untuk angka acak. Masukkan bilangan bulat, angka floating-point presisi ganda, atau objek yang dapat dikonversi menjadi bilangan bulat atau ganda, seperti string numerik ("100"). Nilai defaultnya adalah 0 (nol).

Nilai Minimum harus kurang dari (tidak sama dengan) nilai Maksimum . Jika nilai Maksimum atau Minimum adalah angka floating-point, Get-SecureRandom mengembalikan angka floating-point yang dipilih secara acak.

Jenis:Object
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Shuffle

Mengembalikan seluruh koleksi dalam urutan acak.

Jenis:SwitchParameter
Position:Named
Nilai default:None
Diperlukan:True
Terima input alur:False
Terima karakter wildcard:False

Input

Object

Anda dapat menyalurkan objek apa pun ke cmdlet ini. Ini memilih nilai secara acak dari objek yang disalurkan.

Output

Int32

Int64

Double

PSObject

Cmdlet ini mengembalikan bilangan bulat atau angka floating-point, atau objek yang dipilih secara acak dari koleksi yang dikirimkan.

Catatan

Get-SecureRandom tidak selalu mengembalikan jenis data yang sama dengan nilai input. Tabel berikut menunjukkan jenis output untuk setiap jenis input numerik.

Jenis Input Jenis Output
SByte Dobel
Byte Dobel
Int16 Dobel
UInt16 Dobel
Int32 Int32
UInt32 Dobel
Int64 Int64
UInt64 Dobel
Dobel Dobel
Satu Dobel