Get-SecureRandom
Ruft eine Zufallszahl ab, oder wählt Objekte zufällig aus einer Auflistung aus.
Syntax
RandomNumberParameterSet (Standard)
Get-SecureRandom
[[-Maximum] <Object>]
[-Minimum <Object>]
[-Count <Int32>]
[<CommonParameters>]
RandomListItemParameterSet
Get-SecureRandom
[-InputObject] <Object[]>
[-Count <Int32>]
[<CommonParameters>]
ShuffleParameterSet
Get-SecureRandom
[-InputObject] <Object[]>
[-Shuffle]
[<CommonParameters>]
Beschreibung
Das Get-SecureRandom Cmdlet ruft eine zufällig ausgewählte Zahl ab. Wenn Sie eine Auflistung von Objekten Get-SecureRandoman ü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]::MaxValue.
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.MaxValue ab.
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 Sammlung 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 vom 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 Get-SecureRandom von der weitergeleiteten Nummer (1-6). Die Ergebnisse werden nach ihrem Wert gruppiert und Group-Object als Tabelle formatiert mit 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
Beispiel 11: Verwenden des Count-Parameters
Sie können den Count-Parameter ohne Piping-Objekte verwenden.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 InputObject-Parameter ein Array an, das eine leere Zeichenfolge ('') und $nulleine .
Get-SecureRandom -InputObject @('a','',$null)
Get-SecureRandom gibt entweder aeine leere Zeichenfolge oder eine leere Zeichenfolge zurück $null. Die leere Zeichenfolge wird als leere Zeile angezeigt und $null kehrt zu einer PowerShell-Eingabeaufforderung zurück.
Parameter
-Count
Gibt die Anzahl zufälliger Objekte an, die zurückgegeben werden sollen. Der Standardwert ist 1.
Bei Verwendung mit InputObject 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.
Parametereigenschaften
| Typ: | Int32 |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
RandomNumberParameterSet
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
RandomListItemParameterSet
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | 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 Count angegebenen 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-SecureRandom.
Der InputObject-Parameter akzeptiert Arrays, die eine leere Zeichenfolge oder $nulleine leere Zeichenfolge enthalten können. Das Array kann an die Pipeline oder als InputObject-Parameterwert gesendet werden.
Parametereigenschaften
| Typ: | Object[] |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
RandomListItemParameterSet
| Position: | 0 |
| Obligatorisch.: | True |
| Wert aus Pipeline: | True |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
ShuffleParameterSet
| Position: | 0 |
| Obligatorisch.: | True |
| Wert aus Pipeline: | True |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-Maximum
Gibt einen Maximalwert für die Zufallszahl an.
Get-SecureRandom gibt einen Wert zurück, der kleiner als das Maximum 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 des Maximums muss größer als (nicht gleich) dem Wert von Minimum sein. Wenn der Wert von Maximum oder Minimum eine Gleitkommazahl ist, Get-SecureRandom wird eine zufällig ausgewählte Gleitkommazahl zurückgegeben.
Bei einem 64-Bit-Computer, wenn 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 von MaximumDouble.MaxValue. Andernfalls lautet der Standardwert Int32.MaxValue.
Parametereigenschaften
| Typ: | Object |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
RandomNumberParameterSet
| Position: | 0 |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | 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) dem Wert von "Maximum" entsprechen. Wenn der Wert von Maximum oder Minimum eine Gleitkommazahl ist, Get-SecureRandom wird eine zufällig ausgewählte Gleitkommazahl zurückgegeben.
Parametereigenschaften
| Typ: | Object |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
RandomNumberParameterSet
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-Shuffle
Gibt die gesamte Auflistung in einer zufälligen Reihenfolge zurück.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
ShuffleParameterSet
| Position: | Named |
| Obligatorisch.: | True |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
CommonParameters
Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters.
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 | Double |
| Byte | Double |
| Int16 | Double |
| UInt16 | Double |
| Int32 | Int32 |
| UInt32 | Double |
| Int64 | Int64 |
| UInt64 | Double |
| Double | Double |
| Single | Double |