Get-SecureRandom
Obtient un nombre aléatoire ou sélectionne de façon aléatoire des objets d'une collection.
Syntaxe
Get-SecureRandom
[[-Maximum] <Object>]
[-Minimum <Object>]
[-Count <Int32>]
[<CommonParameters>]
Get-SecureRandom
[-InputObject] <Object[]>
[-Count <Int32>]
[<CommonParameters>]
Get-SecureRandom
[-InputObject] <Object[]>
[-Shuffle]
[<CommonParameters>]
Description
L’applet Get-SecureRandom
de commande obtient un nombre sélectionné de manière aléatoire. Si vous envoyez une collection d’objets à Get-SecureRandom
, elle obtient un ou plusieurs objets sélectionnés de façon aléatoire à partir de la collection.
Sans paramètres ni entrée, une Get-SecureRandom
commande retourne un entier non signé 32 bits sélectionné aléatoirement entre 0 (zéro) et [int32]::MaxValue
.
Vous pouvez utiliser les paramètres de Get-SecureRandom
pour spécifier les valeurs minimales et maximales et le nombre d’objets retournés à partir d’une collection.
Get-SecureRandom
génère un caractère aléatoire sécurisé par chiffrement à l’aide de la classe RandomNumberGenerator .
Exemples
Exemple 1 : Obtenir un entier aléatoire
Cette commande obtient un entier aléatoire compris entre 0 (zéro) et Int32.MaxValue.
Get-SecureRandom
3951433
Exemple 2 : Obtenir un entier aléatoire compris entre 0 et 99
Get-SecureRandom -Maximum 100
47
Exemple 3 : Obtenir un entier aléatoire compris entre -100 et 99
Get-SecureRandom -Minimum -100 -Maximum 100
56
Exemple 4 : Obtenir un nombre à virgule flottante aléatoire
Cette commande obtient un nombre à virgule flottante aléatoire supérieur ou égal à 10,7 et inférieur à 20,93.
Get-SecureRandom -Minimum 10.7 -Maximum 20.93
18.08467273887
Exemple 5 : Obtenir un entier aléatoire à partir d’un tableau
Cette commande obtient un nombre sélectionné de façon aléatoire dans le tableau spécifié.
1, 2, 3, 5, 8, 13 | Get-SecureRandom
8
Exemple 6 : Obtenir plusieurs entiers aléatoires à partir d’un tableau
Cette commande obtient trois nombres sélectionnés de façon aléatoire dans un ordre aléatoire à partir d’un tableau.
1, 2, 3, 5, 8, 13 | Get-SecureRandom -Count 3
3
1
13
Exemple 7 : Aléatoirer une collection entière
Vous pouvez utiliser le paramètre Shuffle pour retourner l’intégralité de la collection dans un ordre aléatoire.
1, 2, 3, 5, 8, 13 | Get-SecureRandom -Shuffle
2
3
5
1
8
13
Exemple 8 : Obtenir une valeur non numérique aléatoire
Cette commande retourne une valeur aléatoire depuis une collection non numérique.
"red", "yellow", "blue" | Get-SecureRandom
yellow
Exemple 9 : Obtenir des fichiers aléatoires
Ces commandes obtiennent un échantillon aléatoire de 50 fichiers à partir du C:
lecteur de l’ordinateur local.
$Files = Get-ChildItem -Path C:\* -Recurse
$Sample = $Files | Get-SecureRandom -Count 50
Exemple 10 : Roll fair dice
Cet exemple montre comment déployer une mort équitable 1200 fois et compter les résultats. La première commande ForEach-Object
répète l’appel à Get-SecureRandom
partir du canal en nombres (1-6). Les résultats sont regroupés par leur valeur avec Group-Object
et mis en forme sous forme de tableau avec 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
Exemple 11 : Utiliser le paramètre Count
Vous pouvez utiliser le paramètre Count sans piping d’objets vers Get-SecureRandom
. L’exemple suivant obtient trois nombres aléatoires inférieurs à 10.
Get-SecureRandom -Count 3 -Maximum 10
9
0
8
Exemple 12 : Utiliser le paramètre InputObject avec une chaîne vide ou $null
Dans cet exemple, le paramètre InputObject spécifie un tableau qui contient une chaîne vide (''
) et $null
.
Get-SecureRandom -InputObject @('a','',$null)
Get-SecureRandom
renvoie soit a
, chaîne vide, soit $null
. La sting vide s’affiche sous la forme d’une ligne vide et $null
retourne à une invite PowerShell.
Paramètres
-Count
Spécifie le nombre d’objets aléatoires à retourner. La valeur par défaut est 1.
En cas d’utilisation avec InputObject
un conteneur d’une collection :
- Chaque élément sélectionné de manière aléatoire n’est retourné qu’une seule fois.
- Si la valeur de Count dépasse le nombre d’objets de la collection, tous les objets de la collection sont retournés dans un ordre aléatoire.
Type: | Int32 |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-InputObject
Spécifie une collection d'objets. Get-SecureRandom
obtient des objets sélectionnés de façon aléatoire dans l’ordre aléatoire de la collection jusqu’au nombre spécifié par Count. Entrez les objets, une variable contenant les objets, ou bien tapez une commande ou une expression qui obtient les objets. Vous pouvez également diriger une collection d’objets vers Get-SecureRandom
.
Le paramètre InputObject accepte les tableaux qui peuvent contenir une chaîne vide ou $null
. Le tableau peut être envoyé vers le bas du pipeline ou en tant que valeur de paramètre InputObject .
Type: | Object[] |
Position: | 0 |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-Maximum
Spécifie une valeur maximale pour le nombre aléatoire. Get-SecureRandom
retourne une valeur inférieure à la valeur maximale (non égale). Entrez un entier, un nombre à virgule flottante double précision ou un objet pouvant être converti en entier ou double, tel qu’une chaîne numérique (« 100 »).
La valeur maximale doit être supérieure (non égale à) à la valeur Minimale. Si la valeur maximale ou minimale est un nombre à virgule flottante, Get-SecureRandom
retourne un nombre à virgule flottante sélectionné de façon aléatoire.
Sur un ordinateur 64 bits, si la valeur minimale est un entier 32 bits, la valeur par défaut de Maximum est Int32.MaxValue.
Si la valeur minimale est un double (nombre à virgule flottante), la valeur par défaut de Maximum est Double.MaxValue. Sinon, la valeur par défaut est Int32.MaxValue.
Type: | Object |
Position: | 0 |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Minimum
Spécifie une valeur minimale pour le nombre aléatoire. Entrez un entier, un nombre à virgule flottante double précision ou un objet pouvant être converti en entier ou double, tel qu’une chaîne numérique (« 100 »). La valeur par défaut est 0 (zéro).
La valeur minimale doit être inférieure (non égale à) à la valeur Maximum. Si la valeur maximale ou minimale est un nombre à virgule flottante, Get-SecureRandom
retourne un nombre à virgule flottante sélectionné de façon aléatoire.
Type: | Object |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Shuffle
Retourne l’intégralité de la collection dans un ordre aléatoire.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
Entrées
Vous pouvez diriger n’importe quel objet vers cette applet de commande. Il sélectionne les valeurs de manière aléatoire à partir des objets redirigés.
Sorties
Cette applet de commande retourne un nombre entier ou à virgule flottante, ou un objet sélectionné de façon aléatoire à partir d’une collection envoyée.
Notes
Get-SecureRandom
ne retourne pas toujours le même type de données que la valeur d’entrée. Le tableau suivant montre le type de sortie pour chacun des types d’entrée numériques.
Type d’entrée | Type de sortie |
---|---|
SByte | Double |
Byte | Double |
Int16 | Double |
UInt16 | Double |
Int32 | Int32 |
UInt32 | Double |
Int64 | Int64 |
UInt64 | Double |
Double | Double |
Unique | Double |