Bagikan melalui


Get-SecureRandom

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

Sintaks

RandomNumberParameterSet (Default)

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

RandomListItemParameterSet

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

ShuffleParameterSet

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 desimal acak

Perintah ini menghasilkan 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 melempar dadu sebanyak 1200 kali dan menghitung hasilnya. Perintah pertama, ForEach-Object mengulangi panggilan ke Get-SecureRandom dari angka yang diproses melalui pipe (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 meneruskan objek ke 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 .

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

Get-SecureRandom mengembalikan a, string kosong, atau $null. String kosong ditampilkan sebagai baris kosong dan $null kembali ke prompt 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.

Properti parameter

Jenis:Int32
Nilai default:None
Mendukung wildcard:False
DontShow:False

Kumpulan parameter

RandomNumberParameterSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False
RandomListItemParameterSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa: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 dalam pipeline atau sebagai nilai parameter InputObject.

Properti parameter

Jenis:

Object[]

Nilai default:None
Mendukung wildcard:False
DontShow:False

Kumpulan parameter

RandomListItemParameterSet
Position:0
Wajib:True
Nilai dari alur:True
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False
ShuffleParameterSet
Position:0
Wajib:True
Nilai dari alur:True
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa: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, mengembalikan angka floating-point yang dipilih secara acak.

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

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

Properti parameter

Jenis:Object
Nilai default:None
Mendukung wildcard:False
DontShow:False

Kumpulan parameter

RandomNumberParameterSet
Position:0
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa: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) nilaiMaksimum . Jika nilai Maksimum atau Minimum adalah angka floating-point, mengembalikan angka floating-point yang dipilih secara acak.

Properti parameter

Jenis:Object
Nilai default:None
Mendukung wildcard:False
DontShow:False

Kumpulan parameter

RandomNumberParameterSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-Shuffle

Mengembalikan seluruh koleksi dalam urutan acak.

Properti parameter

Jenis:SwitchParameter
Nilai default:None
Mendukung wildcard:False
DontShow:False

Kumpulan parameter

ShuffleParameterSet
Position:Named
Wajib:True
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

CommonParameters

Cmdlet ini mendukung parameter umum: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, dan -WarningVariable. Untuk informasi selengkapnya, lihat about_CommonParameters.

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
Bita Dobel
Int16 Dobel
UInt16 Dobel
Int32 Int32
UInt32 Dobel
Int64 Int64
UInt64 Dobel
Dobel Dobel
Tunggal Dobel