Get-Random
난수를 가져오거나 컬렉션에서 임의로 개체를 선택합니다.
구문
Get-Random
[-SetSeed <Int32>]
[[-Maximum] <Object>]
[-Minimum <Object>]
[<CommonParameters>]
Get-Random
[-SetSeed <Int32>]
[-InputObject] <Object[]>
[-Count <Int32>]
[<CommonParameters>]
Description
Get-Random
cmdlet은 임의로 선택된 숫자를 가져옵니다.
Get-Random
개체 컬렉션을 제출하면 컬렉션에서 하나 이상의 임의로 선택된 개체를 가져옵니다.
매개 변수나 입력이 없으면 Get-Random
명령은 0에서 Int32.MaxValue(0x7FFFFFFF
, 2,147,483,647
) 사이에 임의로 선택된 32비트 부호 없는 정수를 반환합니다.
Get-Random
매개 변수를 사용하여 시드 번호, 최소값 및 최대값 및 제출된 컬렉션에서 반환된 개체 수를 지정할 수 있습니다.
예제
예제 1: 임의 정수 가져오기
이 명령은 0에서 Int32.MaxValue사이의 임의 정수를 가져옵니다.
Get-Random
3951433
예제 2: 0에서 99 사이의 임의 정수 가져오기
Get-Random -Maximum 100
47
예제 3: -100 99 사이의 임의 정수 가져오기
Get-Random -Minimum -100 -Maximum 100
56
예제 4: 임의 부동 소수점 숫자 가져오기
이 명령은 10.7보다 크거나 같고 20.92보다 작은 임의 부동 소수점 숫자를 가져옵니다.
Get-Random -Minimum 10.7 -Maximum 20.93
18.08467273887
예제 5: 배열에서 임의 정수 가져오기
이 명령은 지정된 배열에서 임의로 선택된 숫자를 가져옵니다.
1, 2, 3, 5, 8, 13 | Get-Random
8
예제 6: 배열에서 여러 임의 정수 가져오기
이 명령은 배열에서 임의로 선택된 세 개의 숫자를 임의 순서로 가져옵니다.
1, 2, 3, 5, 8, 13 | Get-Random -Count 3
3
1
13
예제 7: 전체 컬렉션 임의화
이 명령은 전체 컬렉션을 임의 순서로 반환합니다.
Count 매개 변수의 값은 정수의 MaxValue 정적 속성입니다.
전체 컬렉션을 임의 순서로 반환하려면 컬렉션의 개체 수보다 크거나 같은 숫자를 입력합니다.
1, 2, 3, 5, 8, 13 | Get-Random -Count ([int]::MaxValue)
2
3
5
1
8
13
예제 8: 숫자가 아닌 임의의 값 가져오기
이 명령은 숫자가 아닌 컬렉션에서 임의의 값을 반환합니다.
"red", "yellow", "blue" | Get-Random
yellow
예제 9: SetSeed 매개 변수 사용
이 예제에서는 SetSeed 매개 변수를 사용하는 효과를 보여 줍니다.
SetSeed 비 임의 동작을 생성하므로 일반적으로 스크립트를 디버깅하거나 분석할 때와 같은 결과를 재현하는 데만 사용됩니다.
# Commands with the default seed are pseudorandom
Get-Random -Maximum 100 -SetSeed 23
Get-Random -Maximum 100
Get-Random -Maximum 100
Get-Random -Maximum 100
74
56
84
46
# Commands with the same seed are not random
Get-Random -Maximum 100 -SetSeed 23
Get-Random -Maximum 100 -SetSeed 23
Get-Random -Maximum 100 -SetSeed 23
74
74
74
# SetSeed results in a repeatable series
Get-Random -Maximum 100 -SetSeed 23
Get-Random -Maximum 100
Get-Random -Maximum 100
Get-Random -Maximum 100
74
56
84
46
예제 10: 임의 파일 가져오기
이러한 명령은 로컬 컴퓨터의 C:
드라이브에서 임의로 선택된 50개의 파일 샘플을 가져옵니다.
$Files = Get-ChildItem -Path C:\* -Recurse
$Sample = $Files | Get-Random -Count 50
예제 11: 공정한 주사위 출시
이 예제에서는 fair die를 1200번 롤아웃하고 결과를 계산합니다. 첫 번째 명령인 For-EachObject
파이프된 숫자에서 Get-Random
호출을 반복합니다(1-6). 결과는 Group-Object
값을 기준으로 그룹화되고 Select-Object
있는 테이블로 서식이 지정됩니다.
1..1200 | ForEach-Object {
1..6 | Get-Random
} | Group-Object | Select-Object Name,Count
Name Count
---- -----
1 206
2 199
3 196
4 226
5 185
6 188
매개 변수
-Count
반환할 임의의 개체 또는 숫자의 수를 지정합니다. 기본값은 1입니다.
InputObject
사용하는 경우 Count 값이 컬렉션의 개체 수를 초과하면 Get-Random
모든 개체를 임의 순서로 반환합니다.
형식: | Int32 |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-InputObject
개체 컬렉션을 지정합니다.
Get-Random
컬렉션에서 임의로 선택한 개체를 Count지정된 수까지 임의 순서로 가져옵니다. 개체, 개체를 포함하는 변수 또는 개체를 가져오는 명령이나 식을 입력합니다. 개체 컬렉션을 Get-Random
파이프할 수도 있습니다.
형식: | Object[] |
Position: | 0 |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-Maximum
난수의 최대값을 지정합니다.
Get-Random
최대값(같지 않음)보다 작은 값을 반환합니다. 정수, 배정밀도 부동 소수점 숫자 또는 숫자 문자열("100")과 같이 정수 또는 double으로 변환할 수 있는 개체를 입력합니다.
최대 값은 최소값보다 커야 합니다.
최대 또는 최소 값이 부동 소수점 숫자인 경우 Get-Random
임의로 선택한 부동 소수점 숫자를 반환합니다.
64비트 컴퓨터에서
형식: | Object |
Position: | 0 |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Minimum
난수의 최소값을 지정합니다. 정수, 배정밀도 부동 소수점 숫자 또는 숫자 문자열("100")과 같이 정수 또는 double으로 변환할 수 있는 개체를 입력합니다. 기본값은 0입니다.
최소 값은 최대값보다 작아야 합니다.
최대 또는 최소 값이 부동 소수점 숫자인 경우 Get-Random
임의로 선택한 부동 소수점 숫자를 반환합니다.
형식: | Object |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-SetSeed
난수 생성기의 초기값을 지정합니다. 이 시드 값은 SetSeed 다시 사용하거나 세션을 닫을 때까지 현재 명령 및 현재 세션의 모든 후속 Get-Random
명령에 사용됩니다. 초기값을 기본값으로 다시 설정할 수 없습니다.
SetSeed 매개 변수는 필요하지 않습니다. 기본적으로 Get-Random
RandomNumberGenerator() 메서드를 사용하여 시드 값을 생성합니다.
SetSeed 비 임의 동작이 발생하므로 일반적으로 Get-Random
명령이 포함된 스크립트를 디버깅하거나 분석할 때와 같이 동작을 재현하려고 할 때만 사용됩니다.
형식: | Int32 |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
입력
하나 이상의 개체를 파이프할 수 있습니다.
Get-Random
파이프된 개체에서 임의로 값을 선택합니다.
출력
System.Int32, System.Int64, System.Double
Get-Random
정수 또는 부동 소수점 숫자 또는 제출된 컬렉션에서 임의로 선택된 개체를 반환합니다.
참고
Get-Random
세션이 시작될 때 시스템 시간 시계에 따라 각 세션에 대한 기본 시드를 설정합니다.
Windows PowerShell 3.0부터 Get-Random
64비트 정수도 지원합니다. Windows PowerShell 2.0에서는 모든 값이 System.Int32캐스팅됩니다.