Get-SecureRandom

Získá náhodné číslo nebo vybere objekty náhodně z kolekce.

Syntaxe

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

Description

Rutina Get-SecureRandom získá náhodně vybrané číslo. Pokud odešlete kolekci objektů Get-SecureRandom, získá jeden nebo více náhodně vybraných objektů z kolekce.

Bez parametrů nebo vstupu Get-SecureRandom vrátí příkaz náhodně vybrané 32bitové celé číslo bez znaménka mezi 0 (nula) a [int32]::MaxValue.

Parametry můžete použít Get-SecureRandom k určení minimální a maximální hodnoty a počtu objektů vrácených z kolekce.

Get-SecureRandom generuje kryptograficky zabezpečenou náhodnost pomocí Třídy RandomNumberGenerator .

Příklady

Příklad 1: Získání náhodného celého čísla

Tento příkaz získá náhodné celé číslo mezi 0 (nula) a Int32.MaxValue.

Get-SecureRandom

3951433

Příklad 2: Získání náhodného celého čísla mezi 0 a 99

Get-SecureRandom -Maximum 100

47

Příklad 3: Získání náhodného celého čísla mezi -100 a 99

Get-SecureRandom -Minimum -100 -Maximum 100

56

Příklad 4: Získání náhodného čísla s plovoucí desetinou čárkou

Tento příkaz získá náhodné číslo s plovoucí desetinou čárkou větší nebo rovno 10,7 a menší než 20,93.

Get-SecureRandom -Minimum 10.7 -Maximum 20.93

18.08467273887

Příklad 5: Získání náhodného celého čísla z pole

Tento příkaz získá náhodně vybrané číslo ze zadaného pole.

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

8

Příklad 6: Získání několika náhodných celých čísel z pole

Tento příkaz získá ze pole tři náhodně vybraná čísla v náhodném pořadí.

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

3
1
13

Příklad 7: Randomizace celé kolekce

Pomocí parametru Shuffle můžete vrátit celou kolekci v náhodném pořadí.

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

2
3
5
1
8
13

Příklad 8: Získání náhodné nečíselné hodnoty

Tento příkaz vrátí náhodnou hodnotu z nečíselné kolekce.

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

yellow

Příklad 9: Získání náhodných souborů

Tyto příkazy z místní jednotky získají náhodně vybraný vzorek 50 souborů C: .

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

Příklad 10: Roll fair kostka

V tomto příkladu se zobrazí spravedlivé kostky 1200krát a spočítá výsledky. První příkaz ForEach-Object zopakuje volání Get-SecureRandom z předaných čísel (1–6). Výsledky jsou seskupené podle jejich hodnoty Group-Object a formátovány jako tabulka s 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

Příklad 11: Použití parametru Count

Parametr Count můžete použít bez propojení objektů do Get-SecureRandom. Následující příklad získá tři náhodná čísla menší než 10.

Get-SecureRandom -Count 3 -Maximum 10

9
0
8

Příklad 12: Použití parametru InputObject s prázdným řetězcem nebo $null

V tomto příkladu parametr InputObject určuje pole, které obsahuje prázdný řetězec ('') a $null.

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

Get-SecureRandomavrátí buď , prázdný řetězec, nebo $null. Prázdné bodnutí se zobrazí jako prázdný řádek a $null vrátí se do příkazového řádku PowerShellu.

Parametry

-Count

Určuje počet náhodných objektů, které se mají vrátit. Výchozí hodnota je 1.

Při použití s InputObject obsahující kolekcí:

  • Každá náhodně vybraná položka se vrátí pouze jednou.
  • Pokud hodnota Count překročí počet objektů v kolekci, vrátí se všechny objekty v kolekci v náhodném pořadí.
Typ:Int32
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-InputObject

Určuje kolekci objektů. Get-SecureRandomzíská náhodně vybrané objekty v náhodném pořadí z kolekce až do čísla určeného počtem. Zadejte objekty, proměnnou, která obsahuje objekty, nebo příkaz nebo výraz, který objekty získá. Kolekci objektů můžete také pipetovat do Get-SecureRandomsouboru .

Parametr InputObject přijímá pole, která mohou obsahovat prázdný řetězec nebo $null. Pole může být odesláno v kanálu nebo jako hodnota parametru InputObject .

Typ:Object[]
Position:0
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-Maximum

Určuje maximální hodnotu náhodného čísla. Get-SecureRandom vrátí hodnotu, která je menší než maximum (nerovná se). Zadejte celé číslo, číslo s plovoucí desetinnou čárkou s dvojitou přesností nebo objekt, který lze převést na celé číslo nebo dvojité číslo, například číselný řetězec ("100").

Hodnota Maximum musí být větší než (nerovná se) hodnotě Minimum. Pokud je hodnota Maximum nebo Minimum číslo s plovoucí desetinou čárkou, Get-SecureRandom vrátí náhodně vybrané číslo s plovoucí desetinou čárkou.

Pokud je v 64bitovém počítači hodnota Minimum 32bitové celé číslo, výchozí hodnota Maximum je Int32.MaxValue.

Pokud je hodnota Minimum dvojitá (číslo s plovoucí desetinou čárkou), výchozí hodnota Maximum je Double.MaxValue. V opačném případě je výchozí hodnota Int32.MaxValue.

Typ:Object
Position:0
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Minimum

Určuje minimální hodnotu náhodného čísla. Zadejte celé číslo, číslo s plovoucí desetinnou čárkou s dvojitou přesností nebo objekt, který lze převést na celé číslo nebo dvojité číslo, například číselný řetězec ("100"). Výchozí hodnota je 0 (nula).

Hodnota Minimum musí být menší než (nerovná se) hodnotě Maximum. Pokud je hodnota Maximum nebo Minimum číslo s plovoucí desetinou čárkou, Get-SecureRandom vrátí náhodně vybrané číslo s plovoucí desetinou čárkou.

Typ:Object
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Shuffle

Vrátí celou kolekci v náhodném pořadí.

Typ:SwitchParameter
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

Vstupy

Object

Do této rutiny můžete převést libovolný objekt. Vybere hodnoty náhodně z svislých objektů.

Výstupy

Int32

Int64

Double

PSObject

Tato rutina vrátí celé číslo nebo číslo s plovoucí desetinou čárkou nebo objekt vybraný náhodně z odeslané kolekce.

Poznámky

Get-SecureRandom nevrací vždy stejný datový typ jako vstupní hodnota. Následující tabulka uvádí výstupní typ pro každý z číselných typů vstupu.

Typ vstupu Typ výstupu
SByte Hodnota s dvojitou přesností
Byte Hodnota s dvojitou přesností
Int16 Hodnota s dvojitou přesností
UInt16 Hodnota s dvojitou přesností
Int32 Int32
UInt32 Hodnota s dvojitou přesností
Int64 Int64
UInt64 Hodnota s dvojitou přesností
Hodnota s dvojitou přesností Hodnota s dvojitou přesností
Jeden Hodnota s dvojitou přesností