Get-Random.
За допомогою командлета Get-Random можна отримати випадкове число з заданого діапазону, а також вибрати випадковий об'єкт з колекції об'єктів. Введений без параметрів, Get-Random поверне випадкове число в діапазоні від 0 до 2,147,483,647 (максимально можливе 32-бітове число, Int32.MaxValue).
При необхідності можна обмежити діапазон, з якого буде вибрано число.Так поставимо верхній діапазон рівним 1000:
Get-Random -Maximum 1000
А нижній обмежимо числом 100:
Get-Random -Maximum 1000 -Minimum 100
Назви параметрів можна скорочувати, наприклад так:
Get-Random -max 1000 -min 100
Примітка. Параметр Maximum є дефолтних, тому його назва взагалі можна не вказувати.Інші параметри необхідно вказувати в явному вигляді. Тобто можна писати Get-Random 1000, але не можна Get-Random 1000 100.
Значення можна вибирати не тільки з цілих чисел. Так наступна команда поверне випадкове число з плаваючою комою в діапазоні від 0.1 до 9.9:
Get-Random - Maximum 9.9 -Minimum 0.1
Признач колекцію об'єктів можна параметром InputObject.Наступна команда виведе випадкове число зі списку:
Get-Random -InputObject 1,2,3,4,6,7,9
Список чисел можна задати і так:
Get-Random -InputObject (1..10)
Можна вибрати не один об'єкт, а кілька. Наприклад наступна команда видасть із заданого списку три випадкових числа:
Get-Random -InputObject (1..10) -Count 3
Щоб отримати всю колекцію в довільному порядку, треба вказати значення Count, дорівнює чи перевищує кількість елементів в колекції. Як варіант, можна вказати значення ([int] :: MaxValue). Наступна команда повертає всі числа від 1 до 10 в довільному порядку:
Get-Random -InputObject (1..10) -Count ([int] :: MaxValue)
За замовчуванням Get-Random використовує для отримання початкового значення для генератора випадкових чисел системний годинник. При необхідності це значення можна задати вручну, за допомогою параметра SetSeed:
Get-Random -Maximum 100 -SetSeed 10
При завданні значення SetSeed результат буде не зовсім випадковим, а головне - його завжди можна повторити.
Get-Random може працювати як з числами, так і з будь-якими іншими об'єктами. Так наприклад, можна вивести випадкове значення з набору слів:
Get-Random -InputObject "one", "two", "three"
Отримати випадковий процес зі списку процесів, запущених на комп'ютері:
$ proc = Get-Process
Get-Random -InputObject $ proc
Або вивести довільний фрагмент тексту з «Володаря кілець»:
$ content = Get-Content C: \ LordOfTheRing.txt
Get-Random -InputObject $ content
Загалом, можливостей у Get -Random досить багато, залишилося тільки придумати їм застосування