다음을 통해 공유


Get-Module

현재 세션으로 가져왔거나 가져올 수 있는 모듈을 검색합니다.

구문

Get-Module [-All] [-ListAvailable] [-Name <string[]>] [<CommonParameters>]

Get-Module [[-Name] <string[]>] [<CommonParameters>]

설명

Get-Module cmdlet은 세션으로 가져왔거나 가져올 수 있는 모듈을 검색합니다.

Get-Module은 모듈을 검색만 하고 가져오지 않습니다. 해당 세션으로 모듈을 가져오려면 Import-Module을 사용합니다.

매개 변수

-All

모든 모듈 파일에 대한 모듈 개체를 가져옵니다.

All 매개 변수가 없는 경우 Get-Module은 기본 모듈 파일에 대한 모듈 개체만 가져옵니다. cmdlet은 매니페스트(.psd1) 파일, 스크립트 모듈(.psm1) 파일 및 이진 모듈(.dll) 파일순으로 파일 형식을 선택합니다.

필수 여부

false

위치

named

기본값

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-ListAvailable

세션으로 가져올 수 있는 모든 모듈을 검색합니다. Get-Module은 $env:PSModulePath 환경 변수로 지정된 경로에서 모듈을 검색합니다.

이 매개 변수가 없는 경우 Get-Module은 해당 세션으로 가져온 모듈만 가져옵니다.

필수 여부

false

위치

named

기본값

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-Name <string[]>

지정된 이름이나 이름 패턴의 모듈만 가져옵니다. 와일드카드를 사용할 수 있습니다. 또한 이름을 Get-Module로 파이프할 수 있습니다.

필수 여부

false

위치

1

기본값

모든 가져온 모듈 또는 사용 가능한 모듈

파이프라인 입력 적용 여부

true (ByValue)

와일드카드 문자 적용 여부

true

<CommonParameters>

이 cmdlet은 -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, -OutVariable 등의 일반 매개 변수를 지원합니다. 자세한 내용은 about_commonparameters.

입력 및 출력

입력 유형은 cmdlet으로 파이프할 수 있는 개체의 유형입니다. 반환 유형은 cmdlet에서 반환되는 개체의 유형입니다.

입력

System.String

모듈 이름을 Get-Module로 파이프할 수 있습니다.

출력

System.Management.Automation.PSModuleInfo

Get-Module은 모듈을 나타내는 개체를 반환합니다.

참고

또한 해당 별칭("gmo")으로 Get-Module을 참조할 수 있습니다. 자세한 내용은 about_Aliases를 참조하십시오.

All 매개 변수는 파일이 cmdlet 또는 공급자를 구현하지 않는 경우에도 파일 이름 확장명이 .dll인 모든 파일에 대한 모듈 개체를 반환합니다.

예 1

C:\PS>get-module

설명
-----------
이 명령은 현재 세션으로 가져온 모듈을 가져옵니다.





예 2

C:\PS>get-module -listAvailable

설명
-----------
이 명령은 현재 세션으로 가져올 수 있는 모듈을 가져옵니다.

Get-Module은 $env:PSModulePath 환경 변수로 지정된 경로에서 사용 가능한 모듈을 찾습니다. PSModulePath에 대한 자세한 내용은 about_Modules 및 about_Environment_Variables를 참조하십시오.





예 3

C:\PS>get-module -listAvailable -all

설명
-----------
이 명령은 사용 가능한 모든 모듈의 내보낸 파일을 모두 가져옵니다.





예 4

C:\PS>get-module | get-member -type property

   TypeName: System.Management.Automation.PSModuleInfo

Name              MemberType Definition
----              ---------- ----------
AccessMode        Property   System.Management.Automation.ModuleAcc
Description       Property   System.String Description {get;set;}
ExportedAliases   Property   System.Collections.Generic.Dictionary`
ExportedCmdlets   Property   System.Collections.Generic.Dictionary`
ExportedFunctions Property   System.Collections.Generic.Dictionary`
ExportedVariables Property   System.Collections.Generic.Dictionary`
Guid              Property   System.Guid Guid {get;}
ModuleBase        Property   System.String ModuleBase {get;}
ModuleType        Property   System.Management.Automation.ModuleTyp
Name              Property   System.String Name {get;}
NestedModules     Property   System.Collections.ObjectModel.ReadOnl
OnRemove          Property   System.Management.Automation.ScriptBlo
Path              Property   System.String Path {get;}
PrivateData       Property   System.Object PrivateData {get;set;}
SessionState      Property   System.Management.Automation.SessionSt
Version           Property   System.Version Version {get;}

설명
-----------
이 명령은 Get-Module이 반환하는 PSModuleInfo 개체의 속성을 가져옵니다. 모듈 파일마다 하나의 개체가 있습니다.

이러한 속성을 사용하여 모듈 개체의 형식을 지정하고 필터링할 수 있습니다. 속성에 대한 자세한 내용은 MSDN(Microsoft Developer Network) 라이브러리의 "PSModule Properties(PSModule 속성)"(https://go.microsoft.com/fwlink/?LinkId=143624)를 참조하십시오.





예 5

C:\PS>get-module -listAvailable -all | format-table -property name, moduletype, path -groupby name -auto

   Name: MyTestCmdlets

Name          ModuleType Path
----          ---------- ----
MyTestCmdlets     Script C:\Windows\system32\WindowsPowerShell\v1.0\Modules\TestCmdlets\TestCmdlets.dll


   Name: PSDiagnostics

Name          ModuleType Path
----          ---------- ----
PSDiagnostics   Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\PSDiagnostics\PSDiagnostics.psd1
PSDiagnostics     Script C:\Windows\system32\WindowsPowerShell\v1.0\Modules\PSDiagnostics\PSDiagnostics.psm1


   Name: FileTransfer

Name         ModuleType Path
----         ---------- ----
FileTransfer   Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\FileTransfer\FileTransfer.psd1

설명
-----------
이 명령은 모든 모듈 파일(가져온 파일과 사용 가능한 파일)을 가져오고 모듈 이름별로 그룹화합니다. 이에 따라 각 스크립트에서 내보내는 모듈 파일을 확인할 수 있습니다.





예 6

C:\PS>$m = get-module -list -name FileTransfer | where {$_.moduletype -eq "Manifest"}

C:\PS> get-content $m.path

@{
GUID="{8FA5064B-8479-4c5c-86EA-0D311FE48875}"
Author="Microsoft Corporation"
CompanyName="Microsoft Corporation"
Copyright="© Microsoft Corporation. All rights reserved."
ModuleVersion="1.0.0.0"
Description="Windows Powershell File Transfer Module"
PowerShellVersion="2.0"
CLRVersion="2.0"
NestedModules="Microsoft.BackgroundIntelligentTransfer.Management"
FormatsToProcess="FileTransfer.Format.ps1xml"
RequiredAssemblies=Join-Path $psScriptRoot "Microsoft.BackgroundIntelligentTransfer.Management.Interop.dll"
}

설명
-----------
이들 명령은 Windows PowerShell File Transfer 모듈에 대한 모듈 매니페스트의 내용을 표시합니다.

첫 번째 명령은 File Transfer 모듈에 대한 모듈 매니페스트를 나타내는 PSModuleInfo 개체를 가져와서 $m 변수에 저장합니다.

두 번째 명령은 점 표기법을 사용하여 개체의 Path 속성에 저장된 매니페스트 파일의 경로를 가져옵니다. 그런 다음 Get-Content cmdlet을 사용하여 지정된 경로에 있는 매니페스트 파일의 내용을 가져옵니다.

모듈에는 매니페스트 파일이 있을 필요가 없으며 있는 경우에는 버전 번호를 포함하기 위해서만 매니페스트가 필요합니다. 그러나 매니페스트 파일에서 모듈, 해당 모듈의 요구 사항 및 내용에 대한 유용한 정보를 제공하는 경우도 많습니다.





예 7

C:\PS>get-module -listAvailable  -name FileTransfer | format-list -property *

Name              : FileTransfer
Path              : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\FileTransfer\FileTransfer.psd1
Description       : Powershell File Transfer Module
Guid              : 8fa5064b-8479-4c5c-86ea-0d311fe48875
ModuleBase        : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\FileTransfer
PrivateData       :
Version           : 1.0.0.0
ModuleType        : Manifest
AccessMode        : ReadWrite
ExportedFunctions : {}
ExportedCmdlets   : {}
NestedModules     : {}
ExportedVariables : {}
ExportedAliases   : {}
SessionState      : System.Management.Automation.SessionState
OnRemove          :

설명
-----------
이 명령은 FileTransfer 모듈의 모든 속성을 목록으로 표시합니다. 

이 모듈을 해당 세션으로 아직 가져오지 않았기 때문에 Exported* 속성과 NestedModules 속성이 채워지지 않았습니다. 이러한 속성은 요소를 내보내고 중첩 모듈을 인스턴스화한 후에만 채워집니다.





예 8

C:\PS>dir (get-module -listavailable FileTransfer).modulebase

    Directory: C:\Windows\system32\WindowsPowerShell\v1.0\Modules\FileTransfer


Mode                LastWriteTime     Length Name
----                -------------     ------ ----
d----        12/16/2008  12:36 PM            en-US
-a---        11/19/2008  11:30 PM      16184 FileTransfer.Format.ps1xml
-a---        11/20/2008  11:30 PM       1044 FileTransfer.psd1
-a---        12/16/2008  12:20 AM     108544 Microsoft.BackgroundIntelligentTransfer.Management.Interop.dll

설명
-----------
이 명령은 모듈의 디렉터리에 있는 파일을 나열합니다. 이는 모듈을 가져오기 전에 모듈에 있는 항목을 확인하는 또 다른 방법입니다. 일부 모듈에는 모듈에 대해 설명하는 추가 정보 파일이나 도움말 파일이 있을 수 있습니다.





참고 항목

개념

Import-Module
New-Module
Remove-Module
about_Modules