Freigeben über


Get-SecureRandom

Ruft eine Zufallszahl ab, oder wählt Objekte zufällig aus einer Auflistung aus.

Syntax

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

Beschreibung

Das Cmdlet Get-SecureRandom ruft eine zufällig ausgewählte Zahl ab. Wenn Sie eine Auflistung von Objekten an Get-SecureRandomübermitteln, ruft sie ein oder mehrere zufällig ausgewählte Objekte aus der Auflistung ab.

Ohne Parameter oder Eingabe gibt ein Get-SecureRandom-Befehl eine zufällig ausgewählte 32-Bit-Ganzzahl ohne Vorzeichen zwischen 0 (Null) und [int32]::MaxValuezurück.

Mit den Parametern Get-SecureRandom können Sie die Mindest- und Höchstwerte und die Anzahl der von einer Auflistung zurückgegebenen Objekte angeben.

Get-SecureRandom generiert kryptografisch sichere Zufallszahlen mithilfe der RandomNumberGenerator Klasse.

Beispiele

Beispiel 1: Abrufen einer ganzzahligen Zufallszahl

Dieser Befehl ruft eine zufällige ganze Zahl zwischen 0 (Null) und Int32.MaxValueab.

Get-SecureRandom

3951433

Beispiel 2: Abrufen einer zufälligen ganzen Zahl zwischen 0 und 99

Get-SecureRandom -Maximum 100

47

Beispiel 3: Abrufen einer Zufallszahl zwischen -100 und 99

Get-SecureRandom -Minimum -100 -Maximum 100

56

Beispiel 4: Abrufen einer zufälligen Gleitkommazahl

Dieser Befehl erhält eine zufällige Gleitkommazahl größer oder gleich 10,7 und kleiner als 20,93.

Get-SecureRandom -Minimum 10.7 -Maximum 20.93

18.08467273887

Beispiel 5: Abrufen einer zufallszahligen Zahl aus einem Array

Dieser Befehl ruft eine zufällig ausgewählte Zahl aus dem angegebenen Array ab.

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

8

Beispiel 6: Abrufen mehrerer ganzzahliger Zufallszahlen aus einem Array

Dieser Befehl ruft drei zufällig ausgewählte Zahlen in zufälliger Reihenfolge aus einem Array ab.

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

3
1
13

Beispiel 7: Randomisieren einer gesamten Auflistung

Sie können den Shuffle--Parameter verwenden, um die gesamte Auflistung in einer zufälligen Reihenfolge zurückzugeben.

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

2
3
5
1
8
13

Beispiel 8: Abrufen eines zufälligen nicht numerischen Werts

Dieser Befehl gibt einen Zufallswert aus einer nicht numerischen Auflistung zurück.

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

yellow

Beispiel 9: Abrufen zufälliger Dateien

Diese Befehle erhalten ein zufällig ausgewähltes Beispiel von 50 Dateien aus dem C: Laufwerk des lokalen Computers.

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

Beispiel 10: Rollen fairer Würfel

In diesem Beispiel wird ein Fair-1200-Mal gerollt und die Ergebnisse zählt. Der erste Befehl, ForEach-Object wiederholt den Aufruf von Get-SecureRandom aus den weitergeleiteten Nummern (1-6). Die Ergebnisse werden nach ihrem Wert mit Group-Object gruppiert und als Tabelle mit Select-Objectformatiert.

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

Beispiel 11: Verwenden des Count-Parameters

Sie können den Parameter Count verwenden, ohne Objekte zu Get-SecureRandom. Das folgende Beispiel ruft drei Zufallszahlen ab, die kleiner als 10 sind.

Get-SecureRandom -Count 3 -Maximum 10

9
0
8

Beispiel 12: Verwenden des InputObject-Parameters mit einer leeren Zeichenfolge oder $null

In diesem Beispiel gibt der parameter InputObject ein Array an, das eine leere Zeichenfolge ('') und $nullenthält.

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

Get-SecureRandom gibt entweder a, leere Zeichenfolge oder $nullzurück. Der leere Sting wird als leere Zeile angezeigt, und $null zu einer PowerShell-Eingabeaufforderung zurückkehrt.

Parameter

-Count

Gibt die Anzahl zufälliger Objekte an, die zurückgegeben werden sollen. Der Standardwert ist 1.

Bei Verwendung mit InputObject mit einer Sammlung:

  • Jedes zufällig ausgewählte Element wird nur einmal zurückgegeben.
  • Wenn der Wert von Count die Anzahl der Objekte in der Auflistung überschreitet, werden alle Objekte in der Auflistung in zufälliger Reihenfolge zurückgegeben.
Typ:Int32
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-InputObject

Gibt eine Auflistung von Objekten an. Get-SecureRandom ruft zufällig ausgewählte Objekte in zufälliger Reihenfolge von der Auflistung bis zur durch Countangegebenen Zahl ab. Geben Sie die Objekte, eine Variable, die die Objekte enthält, oder einen Befehl oder Ausdruck ein, der die Objekte abruft. Sie können auch eine Auflistung von Objekten an Get-SecureRandomweitergeleitet werden.

Der parameter InputObject akzeptiert Arrays, die eine leere Zeichenfolge oder $nullenthalten können. Das Array kann an die Pipeline oder als InputObject Parameterwert gesendet werden.

Typ:Object[]
Position:0
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Maximum

Gibt einen Maximalwert für die Zufallszahl an. Get-SecureRandom gibt einen Wert zurück, der kleiner als der Maximalwert ist (nicht gleich). Geben Sie eine ganze Zahl, eine Gleitkommazahl mit doppelter Genauigkeit oder ein Objekt ein, das in eine ganze Zahl oder ein Double konvertiert werden kann, z. B. eine numerische Zeichenfolge ("100").

Der Wert von Maximum muss größer als (nicht gleich) der Wert von Minimumsein. Wenn der Wert von Maximum oder Minimum eine Gleitkommazahl ist, gibt Get-SecureRandom eine zufällig ausgewählte Gleitkommazahl zurück.

Wenn auf einem 64-Bit-Computer der Wert von Minimum eine 32-Bit-Ganzzahl ist, ist der Standardwert von MaximumInt32.MaxValue.

Wenn der Wert von Minimum ein Double (eine Gleitkommazahl) ist, ist der Standardwert MaximumDouble.MaxValue. Andernfalls ist der Standardwert Int32.MaxValue.

Typ:Object
Position:0
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Minimum

Gibt einen Minimalwert für die Zufallszahl an. Geben Sie eine ganze Zahl, eine Gleitkommazahl mit doppelter Genauigkeit oder ein Objekt ein, das in eine ganze Zahl oder ein Double konvertiert werden kann, z. B. eine numerische Zeichenfolge ("100"). Der Standardwert ist 0 (Null).

Der Wert von Minimum muss kleiner als (nicht gleich) der Wert von Maximumsein. Wenn der Wert von Maximum oder Minimum eine Gleitkommazahl ist, gibt Get-SecureRandom eine zufällig ausgewählte Gleitkommazahl zurück.

Typ:Object
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Shuffle

Gibt die gesamte Auflistung in einer zufälligen Reihenfolge zurück.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

Eingaben

Object

Sie können jedes Objekt an dieses Cmdlet weiterleiten. Sie wählt Werte zufällig aus den weitergeleiteten Objekten aus.

Ausgaben

Int32

Int64

Double

PSObject

Dieses Cmdlet gibt eine ganze Zahl oder eine Gleitkommazahl oder ein Objekt zurück, das zufällig aus einer übermittelten Auflistung ausgewählt wurde.

Hinweise

Get-SecureRandom gibt nicht immer denselben Datentyp wie der Eingabewert zurück. Die folgende Tabelle zeigt den Ausgabetyp für jeden numerischen Eingabetyp.

Eingabetyp Ausgabetyp
SByte Doppelt
Byte Doppelt
Int16 Doppelt
UInt16 Doppelt
Int32 Int32
UInt32 Doppelt
Int64 Int64
UInt64 Doppelt
Doppelt Doppelt
Ledig Doppelt