Get-Command
모든 명령을 가져옵니다.
구문
Get-Command
[-Verb <String[]>]
[-Noun <String[]>]
[-Module <String[]>]
[-FullyQualifiedModule <ModuleSpecification[]>]
[-TotalCount <Int32>]
[-Syntax]
[-ShowCommandInfo]
[[-ArgumentList] <Object[]>]
[-All]
[-ListImported]
[-ParameterName <String[]>]
[-ParameterType <PSTypeName[]>]
[<CommonParameters>]
Get-Command
[[-Name] <String[]>]
[-Module <String[]>]
[-FullyQualifiedModule <ModuleSpecification[]>]
[-CommandType <CommandTypes>]
[-TotalCount <Int32>]
[-Syntax]
[-ShowCommandInfo]
[[-ArgumentList] <Object[]>]
[-All]
[-ListImported]
[-ParameterName <String[]>]
[-ParameterType <PSTypeName[]>]
[<CommonParameters>]
Description
Get-Command
cmdlet은 cmdlet, 별칭, 함수, 필터, 스크립트 및 애플리케이션을 포함하여 컴퓨터에 설치된 모든 명령을 가져옵니다.
Get-Command
다른 세션에서 가져온 PowerShell 모듈 및 명령에서 명령을 가져옵니다. 현재 세션으로 가져온 명령만 가져오려면 ListImported 매개 변수를 사용합니다.
매개 변수가 없으면 Get-Command
컴퓨터에 설치된 모든 cmdlet, 함수 및 별칭을 가져옵니다.
Get-Command *
애플리케이션 명령 유형에 나열된 Path 환경 변수($env:Path
)의 모든 비 PowerShell 파일을 포함하여 모든 유형의 명령을 가져옵니다.
와일드카드 문자 없이 명령의 정확한 이름을 사용하는 Get-Command
명령을 즉시 사용할 수 있도록 명령이 포함된 모듈을 자동으로 가져옵니다. 모듈의 자동 가져오기를 사용하도록 설정, 사용 안 함 및 구성하려면 $PSModuleAutoLoadingPreference
기본 설정 변수를 사용합니다. 자세한 내용은 about_Preference_Variables참조하세요.
Get-Command
도움말 항목에서 정보를 가져오는 Get-Help
달리 명령 코드에서 직접 데이터를 가져옵니다.
Windows PowerShell 5.0부터 Get-Command
cmdlet의 결과에는 기본적으로 버전 열이 표시됩니다. 새 Version 속성이 CommandInfo 클래스에 추가되었습니다.
예제
예제 1: cmdlet, 함수 및 별칭 가져오기
이 명령은 컴퓨터에 설치된 PowerShell cmdlet, 함수 및 별칭을 가져옵니다.
Get-Command
예제 2: 현재 세션에서 명령 가져오기
이 명령은 ListImported 매개 변수를 사용하여 현재 세션의 명령만 가져옵니다.
Get-Command -ListImported
예제 3: cmdlet을 가져와 순서대로 표시
이 명령은 모든 cmdlet을 가져오고 cmdlet 이름의 명사로 사전순으로 정렬한 다음 명사 기반 그룹에 표시합니다. 이 표시는 작업에 대한 cmdlet을 찾는 데 도움이 될 수 있습니다.
Get-Command -Type Cmdlet | Sort-Object -Property Noun | Format-Table -GroupBy Noun
예제 4: 모듈에서 명령 가져오기
이 명령은 Module 매개 변수를 사용하여 Microsoft.PowerShell.Security 및 Microsoft.PowerShell.Utility 모듈에서 명령을 가져옵니다.
Get-Command -Module Microsoft.PowerShell.Security, Microsoft.PowerShell.Utility
예제 5: cmdlet에 대한 정보 가져오기
이 명령은 Get-AppLockerPolicy
cmdlet에 대한 정보를 가져옵니다. 또한 AppLocker 모듈의 모든 명령을 현재 세션에 추가하는 AppLocker 모듈을 가져옵니다.
Get-Command Get-AppLockerPolicy
모듈을 자동으로 가져오는 경우 효과는 Import-Module cmdlet을 사용하는 것과 동일합니다.
모듈은 명령, 형식 및 서식 파일을 추가하고 세션에서 스크립트를 실행할 수 있습니다. 모듈의 자동 가져오기를 사용하도록 설정, 사용 안 함 및 구성하려면 $PSModuleAutoLoadingPreference
기본 설정 변수를 사용합니다. 자세한 내용은 about_Preference_Variables참조하세요.
예제 6: cmdlet의 구문 가져오기
이 명령은 ArgumentList 및 구문 매개 변수를 사용하여 Cert: 드라이브에 사용될 때 Get-ChildItem
cmdlet의 구문을 가져옵니다. 인증서: 드라이브는 인증서 공급자가 세션에 추가하는 PowerShell 드라이브입니다.
Get-Command Get-Childitem -Args Cert: -Syntax
출력에 표시되는 구문을 Args(ArgumentList) 매개 변수를 생략할 때 표시되는 구문과 비교하면 인증서 공급자가 동적 매개 변수인 CodeSigningCertGet-ChildItem
cmdlet에 추가하는 표시됩니다.
인증서 공급자에 대한 자세한 내용은 about_Certificate_Provider참조하세요.
예제 7: 동적 매개 변수 가져오기
이 예제의 명령은 Get-DynamicParameters
함수를 사용하여 인증서 공급자가 Cert: 드라이브에서 사용될 때 Get-ChildItem
cmdlet에 추가하는 동적 매개 변수를 가져옵니다.
function Get-DynamicParameters
{
param ($Cmdlet, $PSDrive)
(Get-Command $Cmdlet -ArgumentList $PSDrive).ParameterSets | ForEach-Object {$_.Parameters} | Where-Object { $_.IsDynamic } | Select-Object -Property Name -Unique
}
Get-DynamicParameters -Cmdlet Get-ChildItem -PSDrive Cert:
Name
----
CodeSigningCert
이 예제의 Get-DynamicParameters
함수는 cmdlet의 동적 매개 변수를 가져옵니다. 이는 이전 예제에서 사용된 메서드의 대안입니다. 동적 매개 변수는 다른 cmdlet 또는 공급자가 cmdlet에 추가할 수 있습니다.
예제 8: 모든 형식의 모든 명령 가져오기
이 명령은 Path 환경 변수($env:path
)의 경로에 있는 실행 파일을 포함하여 로컬 컴퓨터의 모든 형식의 모든 명령을 가져옵니다.
Get-Command *
FileInfo 개체(System.IO.FileInfo)가 아닌 각 파일에 대해 ApplicationInfo 개체(System.Management.Automation.ApplicationInfo)를 반환합니다.
예제 9: 이름을 사용하여 cmdlet 가져오기
이 명령은 이름에 Auth가 포함되고 형식이 AuthenticationMechanism
Get-Command -ParameterName *Auth* -ParameterType AuthenticationMechanism
이 명령과 같은 명령을 사용하여 사용자를 인증하는 데 사용되는 메서드를 지정할 수 있는 cmdlet을 찾을 수 있습니다.
ParameterType 매개 변수는 이름이 비슷한 경우에도 AuthenticationLevel 매개 변수를 사용하는 매개 변수와 AuthenticationMechanism 값을 사용하는 매개 변수를 구분합니다.
예제 10: 별칭 가져오기
이 예제에서는 별칭과 함께 Get-Command
cmdlet을 사용하는 방법을 보여 줍니다.
Get-Command dir
CommandType Name ModuleName
----------- ---- ----------
Alias dir -> Get-ChildItem
일반적으로 cmdlet 및 함수에서 사용되지만 Get-Command
스크립트, 함수, 별칭 및 실행 파일도 가져옵니다.
명령의 출력은 별칭에 대한 Name 속성 값의 특수 보기를 보여 줍니다. 보기에는 별칭과 전체 명령 이름이 표시됩니다.
예제 11: 메모장 명령의 모든 인스턴스 가져오기
이 예제에서는 Get-Command
cmdlet의 All 매개 변수를 사용하여 로컬 컴퓨터에서 "메모장" 명령의 모든 인스턴스를 표시합니다.
Get-Command Notepad -All | Format-Table CommandType, Name, Definition
CommandType Name Definition
----------- ---- ----------
Application notepad.exe C:\WINDOWS\system32\notepad.exe
Application NOTEPAD.EXE C:\WINDOWS\NOTEPAD.EXE
All 매개 변수는 세션에 이름이 같은 명령이 두 개 이상 있는 경우에 유용합니다.
Windows PowerShell 3.0부터 기본적으로 세션에 이름이 같은 여러 명령이 포함된 경우 Get-Command
명령 이름을 입력할 때 실행되는 명령만 가져옵니다.
All 매개 변수를 사용하면 Get-Command
지정된 이름의 모든 명령을 가져오고 실행 우선 순위 순서로 반환합니다. 목록의 첫 번째 경로가 아닌 다른 명령을 실행하려면 명령에 정규화된 경로를 입력합니다.
명령 우선 순위에 대한 자세한 내용은 about_Command_Precedence참조하세요.
예제 12: cmdlet을 포함하는 모듈의 이름 가져오기
이 명령은 Get-Date
cmdlet이 시작된 모듈의 이름을 가져옵니다.
이 명령은 모든 명령의 ModuleName 속성을 사용합니다.
(Get-Command Get-Date).ModuleName
Microsoft.PowerShell.Utility
이 명령 형식은 세션으로 가져오지 않더라도 PowerShell 모듈의 명령에서 작동합니다.
예제 13: 출력 형식이 있는 cmdlet 및 함수 가져오기
Get-Command -Type Cmdlet | Where-Object OutputType | Format-List -Property Name, OutputType
이 명령은 출력 형식과 반환되는 개체의 형식이 있는 cmdlet 및 함수를 가져옵니다.
명령의 첫 번째 부분은 모든 cmdlet을 가져옵니다.
파이프라인 연산자(|)는 OutputType 속성이 채워진 cmdlet만 선택하는 Where-Object
cmdlet으로 cmdlet을 보냅니다.
다른 파이프라인 연산자는 선택한 cmdlet 개체를 Format-List
cmdlet으로 보내는데, 이 cmdlet은 목록에 각 cmdlet의 이름과 출력 형식을 표시합니다.
CommandInfo 개체의 OutputType 속성은 cmdlet 코드가 cmdlet에 대한 OutputType 특성을 정의하는 경우에만 null이 아닌 값을 줍니다.
예제 14: 특정 개체 형식을 입력으로 사용하는 cmdlet 가져오기
Get-Command -ParameterType (((Get-NetAdapter)[0]).PSTypeNames)
CommandType Name ModuleName
----------- ---- ----------
Function Disable-NetAdapter NetAdapter
Function Enable-NetAdapter NetAdapter
Function Rename-NetAdapter NetAdapter
Function Restart-NetAdapter NetAdapter
Function Set-NetAdapter NetAdapter
이 명령은 net 어댑터 개체를 입력으로 사용하는 cmdlet을 찾습니다. 이 명령 형식을 사용하여 명령이 반환하는 개체의 형식을 허용하는 cmdlet을 찾을 수 있습니다.
이 명령은 개체를 설명하는 형식을 가져오는 모든 개체의 내장 속성을
매개 변수
-All
이 cmdlet은 이름이 같은 동일한 형식의 명령을 포함하여 모든 명령을 가져옵니다. 기본적으로 Get-Command
명령 이름을 입력할 때 실행되는 명령만 가져옵니다.
PowerShell에서 여러 명령의 이름이 같은 경우 실행할 명령을 선택하는 데 사용하는 메서드에 대한 자세한 내용은 about_Command_Precedence참조하세요. 이름 충돌로 인해 기본적으로 실행되지 않는 모듈 정규화된 명령 이름 및 실행 명령에 대한 자세한 내용은 about_Modules참조하세요.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
Windows PowerShell 2.0에서 Get-Command
기본적으로 모든 명령을 가져옵니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | False |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-ArgumentList
인수 배열을 지정합니다. 이 cmdlet은 지정된 매개 변수("인수")와 함께 사용될 때 cmdlet 또는 함수에 대한 정보를 가져옵니다.
특정 다른 매개 변수를 사용할 때만 사용할 수 있는 동적 매개 변수를 검색하려면 ArgumentList 값을 동적 매개 변수를 트리거하는 매개 변수로 설정합니다.
공급자가 cmdlet에 추가하는 동적 매개 변수를 검색하려면 ArgumentList 매개 변수의 값을 WSMan:, HKLM:또는 Cert:와 같은 공급자 드라이브의 경로로 설정합니다. 명령이 PowerShell 공급자 cmdlet인 경우 각 명령에 하나의 경로만 입력합니다. 공급자 cmdlet은 ArgumentList첫 번째 경로에 대한 동적 매개 변수만 반환합니다. 공급자 cmdlet에 대한 자세한 내용은 about_Providers참조하세요.
형식: | Object[] |
별칭: | Args |
Position: | 1 |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CommandType
이 cmdlet이 가져오는 명령 유형을 지정합니다. 하나 이상의 명령 유형을 입력합니다. typeGet-Command
모든 cmdlet, 함수 및 별칭을 가져옵니다.
이 매개 변수에 허용되는 값은 다음과 같습니다.
- 별명. 모든 PowerShell 명령의 별칭을 가져옵니다. 자세한 내용은 about_Aliases참조하세요.
- 모두. 모든 명령 형식을 가져옵니다. 이 매개 변수 값은
Get-Command *
동일합니다. - 신청. .txt, .exe및 .dll 파일을 포함하여 Path 환경 변수($env:path)에 나열된 경로에서 비 PowerShell 파일을 가져옵니다. Path 환경 변수에 대한 자세한 내용은 about_Environment_Variables 참조하세요.
- Cmdlet. 모든 cmdlet을 가져옵니다.
- ExternalScript. Path 환경 변수($env:path)에 나열된 경로의 모든 .ps1 파일을 가져옵니다.
- 필터 및 함수입니다. 모든 PowerShell 고급 및 단순 함수 및 필터를 가져옵니다.
- 각본. 모든 스크립트 블록을 가져옵니다. PowerShell 스크립트(.ps1 파일)를 얻으려면 ExternalScript 값을 사용합니다.
- 워크플로. 모든 워크플로를 가져옵니다. 워크플로에 대한 자세한 내용은 Windows PowerShell 워크플로 소개를 참조하세요.
형식: | CommandTypes |
별칭: | Type |
허용되는 값: | Alias, Function, Filter, Cmdlet, ExternalScript, Application, Script, Workflow, Configuration, All |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-FullyQualifiedModule
ModuleSpecification 생성자(Hashtable)설명 섹션에 설명된 ModuleSpecification 개체 형식으로 지정된 이름의 모듈을 지정합니다. 예를 들어 FullyQualifiedModule 매개 변수는 다음 형식 중 하나로 지정된 모듈 이름을 허용합니다.
@{ModuleName = "modulename"; ModuleVersion = "version_number"}
@{ModuleName = "modulename"; ModuleVersion = "version_number"; Guid = "GUID"}
ModuleName 및 ModuleVersion 필요하지만 Guid 선택 사항입니다.
Module 매개 변수와 동일한 명령에서 FullyQualifiedModule 매개 변수를 지정할 수 없습니다. 두 매개 변수는 함께 사용할 수 없습니다.
형식: | ModuleSpecification[] |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-ListImported
이 cmdlet은 현재 세션의 명령만 가져옵니다.
기본적으로 PowerShell 3.0부터 Get-Command
현재 세션의 명령을 포함하지만 제한되지 않는 모든 설치된 명령을 가져옵니다. PowerShell 2.0에서는 현재 세션의 명령만 가져옵니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-Module
모듈 배열을 지정합니다. 이 cmdlet은 지정된 모듈 또는 스냅인에서 온 명령을 가져옵니다. 모듈 또는 스냅인의 이름을 입력합니다.
이 매개 변수는 문자열 값을 사용하지만 이 매개 변수의 값은 Get-Module
, Get-PSSnapin
및 Import-PSSession
cmdlet이 반환하는 개체와 같은 PSModuleInfo 또는 PSSnapinInfo 개체일 수도 있습니다.
이 매개 변수는 이름, 모듈또는 별칭으로 참조할 수 PSSnapin. 선택한 매개 변수 이름은 명령 출력에 영향을 주지 않습니다.
형식: | String[] |
별칭: | PSSnapin |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | True |
-Name
이름 배열을 지정합니다. 이 cmdlet은 지정된 이름을 가진 명령만 가져옵니다. 이름 또는 이름 패턴을 입력합니다. 와일드카드 문자가 허용됩니다.
이름이 같은 명령을 얻으려면 All 매개 변수를 사용합니다. 두 명령의 이름이 같으면 기본적으로 Get-Command
명령 이름을 입력할 때 실행되는 명령을 가져옵니다.
형식: | String[] |
Position: | 0 |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | True |
-Noun
명령 명사 배열을 지정합니다. 이 cmdlet은 지정된 명사 이름을 포함하는 cmdlet, 함수 및 별칭을 포함하는 명령을 가져옵니다. 명사 또는 명사 패턴을 하나 이상 입력합니다. 와일드카드 문자가 허용됩니다.
형식: | String[] |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | True |
-ParameterName
매개 변수 이름의 배열을 지정합니다. 이 cmdlet은 지정된 매개 변수가 있는 세션의 명령을 가져옵니다. 매개 변수 이름 또는 매개 변수 별칭을 입력합니다. 와일드카드 문자가 지원됩니다.
ParameterName 및 ParameterType 매개 변수는 현재 세션의 명령만 검색합니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | String[] |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | True |
-ParameterType
매개 변수 이름의 배열을 지정합니다. 이 cmdlet은 지정된 형식의 매개 변수가 있는 세션에서 명령을 가져옵니다. 매개 변수 형식의 전체 이름 또는 부분 이름을 입력합니다. 와일드카드 문자가 지원됩니다.
ParameterName 및 ParameterType 매개 변수는 현재 세션의 명령만 검색합니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | PSTypeName[] |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | True |
-ShowCommandInfo
이 cmdlet에 명령 정보가 표시됨을 나타냅니다.
이 매개 변수는 Windows PowerShell 5.0에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Syntax
이 cmdlet은 명령에 대해 지정된 다음 데이터만 가져옵니다.
- 별칭. 표준 이름을 가져옵니다.
- Cmdlet. 구문을 가져옵니다.
- 함수 및 필터. 함수 정의를 가져옵니다.
- 스크립트 및 애플리케이션 또는 파일. 경로 및 파일 이름을 가져옵니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-TotalCount
가져올 명령 수를 지정합니다. 이 매개 변수를 사용하여 명령의 출력을 제한할 수 있습니다.
형식: | Int32 |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-Verb
명령 동사의 배열을 지정합니다. 이 cmdlet은 지정된 동사를 포함하는 이름을 가진 cmdlet, 함수 및 별칭을 포함하는 명령을 가져옵니다. 하나 이상의 동사 또는 동사 패턴을 입력합니다. 와일드카드 문자가 허용됩니다.
형식: | String[] |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | True |
입력
명령 이름을 이 cmdlet으로 파이프할 수 있습니다.
출력
이 cmdlet은 CommandInfo 클래스에서 파생된 개체를 반환합니다. 반환되는 개체의 형식은 Get-Command
가져오는 명령의 형식에 따라 달라집니다.
별칭을 나타냅니다.
애플리케이션 및 파일을 나타냅니다.
cmdlet을 나타냅니다.
함수 및 필터를 나타냅니다.
워크플로를 나타냅니다.
참고
- 세션에 이름이 같은 명령을 둘 이상 사용할 수 있는 경우
Get-Command
명령 이름을 입력할 때 실행되는 명령을 반환합니다. 이름이 같은 명령을 실행 순서대로 표시하려면 All 매개 변수를 사용합니다. 자세한 내용은 about_Command_Precedence참조하세요. - 모듈을 자동으로 가져오는 경우 효과는
Import-Module
cmdlet을 사용하는 것과 동일합니다. 모듈은 명령, 형식 및 서식 파일을 추가하고 세션에서 스크립트를 실행할 수 있습니다. 모듈의 자동 가져오기를 사용하도록 설정, 사용 안 함 및 구성하려면$PSModuleAutoLoadingPreference
기본 설정 변수를 사용합니다. 자세한 내용은 about_Preference_Variables참조하세요.