Get-Module
현재 세션에서 가져온 모듈 또는 PSModulePath에서 가져올 수 있는 모듈을 나열합니다.
구문
Get-Module
[[-Name] <String[]>]
[-FullyQualifiedName <ModuleSpecification[]>]
[-All]
[<CommonParameters>]
Get-Module
[[-Name] <String[]>]
[-FullyQualifiedName <ModuleSpecification[]>]
[-All]
[-ListAvailable]
[-PSEdition <String>]
[-SkipEditionCheck]
[-Refresh]
[<CommonParameters>]
Get-Module
[[-Name] <String[]>]
[-FullyQualifiedName <ModuleSpecification[]>]
[-ListAvailable]
[-PSEdition <String>]
[-SkipEditionCheck]
[-Refresh]
-PSSession <PSSession>
[<CommonParameters>]
Get-Module
[[-Name] <String[]>]
[-FullyQualifiedName <ModuleSpecification[]>]
[-ListAvailable]
[-SkipEditionCheck]
[-Refresh]
-CimSession <CimSession>
[-CimResourceUri <Uri>]
[-CimNamespace <String>]
[<CommonParameters>]
Description
이 cmdlet에는 Get-Module
PowerShell 세션으로 가져온 PowerShell 모듈 또는 가져올 수 있는 PowerShell 모듈이 나열됩니다. 매개 변수가 Get-Module
없으면 현재 세션으로 가져온 모듈을 가져옵니다. ListAvailable 매개 변수는 PSModulePath 환경 변수($env:PSModulePath
)에 지정된 경로에서 가져올 수 있는 모듈을 나열하는 데 사용됩니다.
반환하는 Get-Module
모듈 개체에는 모듈에 대한 중요한 정보가 포함됩니다. 모듈 개체를 다른 cmdlet(예: cmdlet)으로 파이프할 Import-Module
Remove-Module
수도 있습니다.
Get-Module
는 모듈을 나열하지만 가져오지는 않습니다. Windows PowerShell 3.0부터 모듈에서 명령을 사용할 때 모듈을 자동으로 가져오지만 Get-Module
명령은 자동 가져오기를 트리거하지 않습니다. cmdlet을 사용하여 Import-Module
모듈을 세션으로 가져올 수도 있습니다.
Windows PowerShell 3.0부터 원격 세션에서 로컬 세션으로 모듈을 가져온 다음 가져올 수 있습니다. 이 전략은 PowerShell의 암시적 원격 기능을 사용하며 cmdlet을 Import-PSSession
사용하는 것과 같습니다. 다른 세션에서 가져온 모듈에서 명령을 사용하는 경우 명령은 원격 세션에서 암시적으로 실행됩니다. 이 기능을 사용하면 로컬 세션에서 원격 컴퓨터를 관리할 수 있습니다.
또한 Windows PowerShell 3.0부터 CIM(일반 정보 모델) 모듈을 사용하고 Get-Module
Import-Module
가져올 수 있습니다. CIM 모듈은 CDXML(Cmdlet 정의 XML) 파일에서 cmdlet을 정의합니다. 이 기능을 사용하면 C++로 작성된 것과 같이 관리되지 않는 코드 어셈블리에서 구현되는 cmdlet을 사용할 수 있습니다.
암시적 원격을 사용하여 PowerShell 원격을 사용하도록 설정된 원격 컴퓨터를 관리할 수 있습니다.
원격 컴퓨터에서 PSSession을 만든 다음 PSSession 매개 변수 Get-Module
를 사용하여 원격 세션에서 PowerShell 모듈을 가져옵니다. 원격 세션에서 모듈을 가져올 때 가져온 명령은 원격 컴퓨터의 세션에서 실행됩니다.
비슷한 전략을 사용하여 PowerShell 원격을 사용하도록 설정하지 않은 컴퓨터를 관리할 수 있습니다. 여기에는 Windows 운영 체제를 실행하지 않는 컴퓨터와 PowerShell이 있지만 PowerShell 원격을 사용하도록 설정하지 않은 컴퓨터가 포함됩니다.
먼저 원격 컴퓨터에서 CIM 세션을 만듭니다. CIM 세션은 원격 컴퓨터의 WMI(Windows Management Instrumentation)에 대한 연결입니다. 그런 다음 CIM 세션에서 CIM 모듈을 가져오는 데 CIMSession 매개 변수 Get-Module
를 사용합니다. cmdlet을 사용하여 CIM 모듈을 Import-Module
가져온 다음 가져온 명령을 실행하는 경우 명령은 원격 컴퓨터에서 암시적으로 실행됩니다. 이 WMI 및 CIM 전략을 사용하여 원격 컴퓨터를 관리할 수 있습니다.
예제
예제 1: 현재 세션으로 가져온 모듈 가져오기
Get-Module
이 명령은 현재 세션으로 가져온 모듈을 가져옵니다.
예제 2: 설치된 모듈 및 사용 가능한 모듈 가져오기
Get-Module -ListAvailable
이 명령은 컴퓨터에 설치된 모듈을 가져오고 현재 세션으로 가져올 수 있습니다.
Get-Module
는 $env:PSModulePath 환경 변수로 지정된 경로에서 사용 가능한 모듈을 찾습니다. PSModulePath에 대한 자세한 내용은 about_Modules 및 about_Environment_Variables 참조하세요.
예제 3: 내보낸 모든 파일 가져오기
Get-Module -ListAvailable -All
이 명령은 사용 가능한 모든 모듈에 대해 내보낸 모든 파일을 가져옵니다.
예제 4: 정규화된 이름으로 모듈 가져오기
$FullyQualifiedName = @{ModuleName="Microsoft.PowerShell.Management";ModuleVersion="3.1.0.0"}
Get-Module -FullyQualifiedName $FullyQualifiedName | Format-Table -Property Name,Version
Name Version
---- -------
Microsoft.PowerShell.Management 3.1.0.0
이 예제에서는 FullyQualifiedName 매개 변수를 사용하여 모듈의 정규화된 이름을 지정하여 Microsoft.PowerShell.Management 모듈을 가져옵니다. 그런 다음 이 명령은 결과를 cmdlet으로 Format-Table
파이프하여 이름 및 버전을 열 머리글로 사용하여 결과의 형식을 테이블로 지정합니다.
모듈의 정규화된 이름에서 ModuleVersion 값은 최소 버전으로 작동합니다. 따라서 이 예제에서는 버전 3.1.0.0
이상의 Microsoft.PowerShell.Management 모듈과 일치합니다.
예제 5: 모듈의 속성 가져오기
Get-Module | Get-Member -MemberType Property | Format-Table Name
Name
----
AccessMode
Author
ClrVersion
CompanyName
Copyright
Definition
Description
DotNetFrameworkVersion
ExportedAliases
ExportedCmdlets
ExportedCommands
ExportedFormatFiles
ExportedFunctions
ExportedTypeFiles
ExportedVariables
ExportedWorkflows
FileList
Guid
HelpInfoUri
LogPipelineExecutionDetails
ModuleBase
ModuleList
ModuleType
Name
NestedModules
OnRemove
Path
PowerShellHostName
PowerShellHostVersion
PowerShellVersion
PrivateData
ProcessorArchitecture
RequiredAssemblies
RequiredModules
RootModule
Scripts
SessionState
Version
이 명령은 반환되는 PSModuleInfo 개체 Get-Module
의 속성을 가져옵니다. 각 모듈 파일에 대해 하나의 개체가 있습니다.
속성을 사용하여 모듈 개체의 서식을 지정하고 필터링할 수 있습니다. 속성에 대한 자세한 내용은 PSModuleInfo 속성을 참조 하세요.
출력에는 Windows PowerShell 3.0에서 도입된 Author 및 CompanyName과 같은 새 속성이 포함됩니다.
예제 6: 모든 모듈을 이름으로 그룹화
Get-Module -ListAvailable -All | Format-Table -Property Name, Moduletype, Path -Groupby Name
Name: AppLocker
Name ModuleType Path
---- ---------- ----
AppLocker Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\AppLocker\AppLocker.psd1
Name: Appx
Name ModuleType Path
---- ---------- ----
Appx Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Appx\en-US\Appx.psd1
Appx Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Appx\Appx.psd1
Appx Script C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Appx\Appx.psm1
Name: BestPractices
Name ModuleType Path
---- ---------- ----
BestPractices Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\BestPractices\BestPractices.psd1
Name: BitsTransfer
Name ModuleType Path
---- ---------- ----
BitsTransfer Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\BitsTransfer\BitsTransfer.psd1
이 명령은 가져오고 사용할 수 있는 모든 모듈 파일을 가져온 다음 모듈 이름으로 그룹화합니다. 이렇게 하면 각 스크립트가 내보내는 모듈 파일을 볼 수 있습니다.
예제 7: 모듈 매니페스트의 내용 표시
이러한 명령은 Windows PowerShell BitsTransfer 모듈에 대한 모듈 매니페스트의 내용을 표시합니다.
모듈에는 매니페스트 파일이 필요하지 않습니다. 매니페스트 파일이 있는 경우 매니페스트 파일은 버전 번호를 포함하기만 하면 됩니다. 그러나 매니페스트 파일에서 모듈, 해당 모듈의 요구 사항 및 내용에 대한 유용한 정보를 제공하는 경우도 많습니다.
# First command
$m = Get-Module -list -Name BitsTransfer
# Second command
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"
}
첫 번째 명령은 BitsTransfer 모듈을 나타내는 PSModuleInfo 개체를 가져옵니다. 변수에 개체를 $m
저장합니다.
두 번째 명령은 cmdlet을 Get-Content
사용하여 지정된 경로에서 매니페스트 파일의 콘텐츠를 가져옵니다. 점 표기법을 사용하여 개체의 Path 속성에 저장된 매니페스트 파일의 경로를 가져옵니다. 출력에는 모듈 매니페스트의 내용이 표시됩니다.
예제 8: 모듈 디렉터리에 파일 나열
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
이 명령은 모듈의 디렉터리에 있는 파일을 나열합니다. 이는 모듈을 가져오기 전에 모듈에 있는 항목을 확인하는 또 다른 방법입니다. 일부 모듈에는 모듈에 대해 설명하는 추가 정보 파일이나 도움말 파일이 있을 수 있습니다.
예제 9: 컴퓨터에 설치된 모듈 가져오기
$s = New-PSSession -ComputerName Server01
Get-Module -PSSession $s -ListAvailable
이러한 명령은 Server01 컴퓨터에 설치된 모듈을 가져옵니다.
첫 번째 명령은 cmdlet을 New-PSSession
사용하여 Server01 컴퓨터에서 PSSession을 만듭니다. 이 명령은 PSSession을 변수에 $s
저장합니다.
두 번째 명령은 PSSession 및 ListAvailable 매개 변수 Get-Module
를 사용하여 PSSession의 모듈을 변수에 $s
가져옵니다.
다른 세션에서 cmdlet Import-Module
으로 모듈을 파이프하는 Import-Module
경우 암시적 원격 기능을 사용하여 모듈을 현재 세션으로 가져옵니다. 이는 cmdlet을 Import-PSSession
사용하는 것과 같습니다. 현재 세션의 모듈에서 cmdlet을 사용할 수 있지만 이러한 cmdlet을 사용하는 명령은 실제로 원격 세션을 실행합니다. 자세한 내용은 Import-Module
및 Import-PSSession
를 참조하세요.
예제 10: Windows 운영 체제를 실행하지 않는 컴퓨터 관리
이 예제의 명령을 사용하면 Windows 운영 체제를 실행하지 않는 원격 컴퓨터의 스토리지 시스템을 관리할 수 있습니다. 이 예제에서는 컴퓨터 관리자가 모듈 검색 WMI 공급자를 설치했기 때문에 CIM 명령은 공급자를 위해 설계된 기본값을 사용할 수 있습니다.
$cs = New-CimSession -ComputerName RSDGF03
Get-Module -CimSession $cs -Name Storage | Import-Module
Get-Command Get-Disk
CommandType Name ModuleName
----------- ---- ----------
Function Get-Disk Storage
Get-Disk
Number Friendly Name OperationalStatus Total Size Partition Style
------ ------------- ----------------- ---------- ---------------
0 Virtual HD ATA Device Online 40 GB MBR
첫 번째 명령은 cmdlet을 New-CimSession
사용하여 RSDGF03 원격 컴퓨터에서 세션을 만듭니다. 세션은 원격 컴퓨터의 WMI에 연결됩니다. 이 명령은 CIM 세션을 변수에 $cs
저장합니다.
두 번째 명령은 변수의 CIM 세션을 $cs
사용하여 RSDGF03 컴퓨터에서 명령을 실행 Get-Module
합니다. 이 명령은 Name 매개 변수를 사용하여 스토리지 모듈을 지정합니다. 이 명령은 파이프라인 연산자(|
)를 사용하여 스토리지 모듈을 Import-Module
cmdlet으로 보내 로컬 세션으로 가져옵니다.
세 번째 명령은 Storage 모듈의 Get-Command
Get-Disk
명령에서 cmdlet을 실행합니다.
CIM 모듈을 로컬 세션으로 가져오면 PowerShell은 CIM 모듈을 나타내는 CDXML 파일을 PowerShell 스크립트로 변환합니다. 이 파일은 로컬 세션에 함수로 표시됩니다.
네 번째 명령은 명령을 실행합니다 Get-Disk
. 명령은 로컬 세션에 입력되지만 가져온 원격 컴퓨터에서 암시적으로 실행됩니다. 이 명령은 원격 컴퓨터에서 개체를 가져오고 로컬 세션으로 반환합니다.
매개 변수
-All
이 cmdlet은 중첩된 모듈, 매니페스트() 파일, 스크립트 모듈() 파일 및 이진 모듈(.psd1
.psm1
.dll
) 파일을 포함하여 각 모듈 폴더의 모든 모듈을 가져옵니다. 이 매개 변수가 Get-Module
없으면 각 모듈 폴더의 기본 모듈만 가져옵니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | False |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CimNamespace
CIM 모듈을 노출하는 대체 CIM 공급자의 네임스페이스를 지정합니다. 기본값은 모듈 검색 WMI 공급자의 네임스페이스입니다.
이 매개 변수를 사용하여 Windows 운영 체제를 실행하지 않는 컴퓨터 및 디바이스에서 CIM 모듈을 가져옵니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CimResourceUri
CIM 모듈의 대체 위치를 지정합니다. 기본값은 원격 컴퓨터에서 모듈 검색 WMI 공급자의 리소스 URI입니다.
이 매개 변수를 사용하여 Windows 운영 체제를 실행하지 않는 컴퓨터 및 디바이스에서 CIM 모듈을 가져옵니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | Uri |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CimSession
원격 컴퓨터에서 CIM 세션을 지정합니다. CIM 세션이 포함된 변수 또는 GET-CimSession 명령과 같이 CIM 세션을 가져오는 명령을 입력합니다.
Get-Module
는 CIM 세션 연결을 사용하여 원격 컴퓨터에서 모듈을 가져옵니다. cmdlet을 사용하여 Import-Module
모듈을 가져오고 현재 세션의 가져온 모듈에서 명령을 사용하는 경우 명령은 실제로 원격 컴퓨터에서 실행됩니다.
이 매개 변수를 사용하여 Windows 운영 체제를 실행하지 않는 컴퓨터와 디바이스 및 PowerShell이 있지만 PowerShell 원격을 사용하도록 설정하지 않은 컴퓨터에서 모듈을 가져올 수 있습니다.
CimSession 매개 변수는 CIMSession의 모든 모듈을 가져옵니다. 그러나 CIM 기반 및 CMDLET 정의 XML(CDXML) 기반 모듈만 가져올 수 있습니다.
형식: | CimSession |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-FullyQualifiedName
값은 모듈 이름, 전체 모듈 사양 또는 모듈 파일 경로일 수 있습니다.
값이 경로인 경우 경로는 정규화되거나 상대적일 수 있습니다. 상대 경로는 using 문을 포함하는 스크립트를 기준으로 확인됩니다.
값이 이름 또는 모듈 사양인 경우 PowerShell은 PSModulePath에서 지정된 모듈을 검색합니다.
모듈 사양은 다음 키가 있는 해시 테이블입니다.
ModuleName
- 필수 모듈 이름을 지정합니다.GUID
- 선택 사항 모듈의 GUID를 지정합니다.- 또한 아래 세 가지 키 중 하나 이상을 지정해야 합니다 .
ModuleVersion
- 모듈의 허용 가능한 최소 버전을 지정합니다.MaximumVersion
- 모듈의 허용되는 최대 버전을 지정합니다.RequiredVersion
- 모듈의 정확한 필수 버전을 지정합니다. 다른 버전 키에는 사용할 수 없습니다.
Name 매개 변수와 동일한 명령에서 FullyQualifiedName 매개 변수를 지정할 수 없습니다.
형식: | ModuleSpecification[] |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-ListAvailable
이 cmdlet은 설치된 모든 모듈을 가져옵니다. Get-Module
는 PSModulePath 환경 변수에 나열된 경로의 모듈을 가져옵니다. 이 매개 변수 Get-Module
가 없으면 PSModulePath 환경 변수에 나열되고 현재 세션에 로드된 모듈만 가져옵니다. ListAvailable은 해당 모듈이 현재 세션에서 로드되더라도 PSModulePath 환경 변수에서 찾을 수 없는 모듈에 대한 정보를 반환하지 않습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Name
이 cmdlet이 가져오는 모듈의 이름 또는 이름 패턴을 지정합니다. 와일드카드 문자를 사용할 수 있습니다. 이름을 .에 파이프할 Get-Module
수도 있습니다. Name 매개 변수와 동일한 명령에서 FullyQualifiedName 매개 변수를 지정할 수 없습니다.
이름은 모듈 GUID를 값으로 사용할 수 없습니다. GUID를 지정하여 모듈을 반환하려면 대신 FullyQualifiedName을 사용합니다.
형식: | String[] |
Position: | 0 |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | True |
-PSEdition
지정된 버전의 PowerShell을 지원하는 모듈을 가져옵니다.
이 매개 변수에 허용되는 값은 다음과 같습니다.
Desktop
Core
cmdlet은 Get-Module
PSModuleInfo 개체의 CompatiblePSEditions 속성을 지정한 값에 대해 확인하고 설정된 모듈만 반환합니다.
참고 항목
- Desktop Edition: .NET Framework를 기반으로 구축되며 Server Core 및 Windows Desktop과 같은 전체 버전의 Windows에서 실행되는 PowerShell 버전을 대상 지정하는 스크립트 및 모듈과 호환성을 제공합니다.
- Core Edition: .NET Framework를 기반으로 구축되며 Nano 서버 및 Windows IoT와 같은 축소된 버전의 Windows에서 실행되는 PowerShell 버전을 대상 지정하는 스크립트 및 모듈과 호환성을 제공합니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-PSSession
지정된 PSSession(사용자 관리 PowerShell 세션)의 모듈을 가져옵니다. 세션이 포함된 변수, 세션(예: Get-PSSession
명령)을 가져오는 명령 또는 명령과 같이 New-PSSession
세션을 만드는 명령을 입력합니다.
세션이 원격 컴퓨터에 연결된 경우 ListAvailable 매개 변수를 지정해야 합니다.
Get-Module
PSSession 매개 변수를 사용하는 명령은 cmdlet을 Invoke-Command
사용하여 PSSession에서 명령을 실행하는 Get-Module -ListAvailable
것과 같습니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | PSSession |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Refresh
이 cmdlet이 설치된 명령의 캐시를 새로 고친다는 것을 나타냅니다. 명령 캐시는 세션이 시작될 때 만들어집니다. 이를 통해 cmdlet은 Get-Command
세션으로 가져오지 않은 모듈에서 명령을 가져올 수 있습니다.
이 매개 변수는 세션이 시작된 이후 모듈의 내용이 변경된 개발 및 테스트 시나리오를 위해 설계되었습니다.
명령에서 Refresh 매개 변수를 지정할 때 ListAvailable을 지정해야 합니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | False |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-SkipEditionCheck
CompatiblePSEditions 필드의 검사를 건너뜁니다 .
기본적으로 CompatiblePSEditions %windir%\System32\WindowsPowerShell\v1.0\Modules
필드에 지정 Core
하지 않는 디렉터리의 모듈을 생략합니다. Get-Module
이 스위치를 설정하면 PowerShell v6 이상과 호환되지 않는 Windows PowerShell 모듈 경로 아래의 모듈이 반환되도록 모듈이 포함되지 않습니다 Core
.
macOS 및 Linux에서 이 매개 변수는 아무 작업도 수행하지 않습니다.
자세한 내용은 about_PowerShell_Editions 참조하세요.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
입력
모듈 이름을 이 cmdlet으로 파이프할 수 있습니다.
출력
이 cmdlet은 모듈을 나타내는 개체를 반환합니다. ListAvailable 매개 변수 Get-Module
를 지정하면 속성과 메서드가 동일한 PSModuleInfo 개체의 형식인 ModuleInfoGrouping 개체를 반환합니다.
참고
PowerShell에는 다음 별칭이 포함됩니다.Get-Module
모든 플랫폼:
gmo
Windows PowerShell 3.0부터 PowerShell에 포함된 핵심 명령은 모듈에 패키지됩니다. 스냅인(PSSnapin)인 Microsoft.PowerShell.Core는 예외입니다. 기본적으로 Microsoft.PowerShell.Core 스냅인만 세션에 추가됩니다. 모듈은 처음 사용할 때 자동으로 가져오며 cmdlet을
Import-Module
사용하여 가져올 수 있습니다.Windows PowerShell 2.0 및 이후 버전의 PowerShell에서 이전 스타일 세션을 만드는 호스트 프로그램에서 핵심 명령은 스냅인(PSSnapins)으로 패키지됩니다. 예외는 항상 스냅인인 Microsoft.PowerShell.Core입니다. 또한 cmdlet에서 시작한
New-PSSession
것과 같은 원격 세션은 핵심 스냅인을 포함하는 이전 스타일의 세션입니다.핵심 모듈을 사용하여 최신 스타일 세션을 만드는 CreateDefault2 메서드에 대한 자세한 내용은 CreateDefault2 메서드를 참조하세요.
Get-Module
PSModulePath 환경 변수($env:PSModulePath
)의 값에 저장된 위치에 있는 모듈만 가져옵니다. cmdlet은Import-Module
다른 위치에서 모듈을 가져올 수 있지만 cmdlet을Get-Module
사용하여 가져올 수는 없습니다.또한 PowerShell 3.0부터 모듈을 가져오기 전에 모듈에 대해 더 쉽게 알아볼 수 있도록 반환하는
Get-Module
개체에 새 속성이 추가되었습니다. 가져오기 전에 모든 속성이 채워집니다. 여기에는 모듈에서 내보내는 명령을 나열하는 ExportedCommands, ExportedCmdlet 및 ExportedFunctions 속성이 포함됩니다.ListAvailable 매개 변수는 모듈 폴더의 이름과 기본 이름이 같은 파일이 하나 이상 포함된 올바른 형식의 모듈만 가져옵니다. 기본 이름은 파일 이름 확장명을 사용하지 않는 이름입니다. 이름이 다른 파일이 포함된 폴더는 모듈이 아닌 컨테이너로 간주됩니다.
DLL 파일로 구현되지만 모듈 폴더에 묶이지 않은 모듈을 얻으려면 ListAvailable 및 All 매개 변수를 모두 지정합니다.
CIM 세션 기능을 사용하려면 원격 컴퓨터에 CIM(공용 정보 모델) 표준의 Microsoft 구현인 WS-Management 원격 및 WMI(Windows Management Instrumentation)가 있어야 합니다. 또한 컴퓨터에는 모듈 검색 WMI 공급자 또는 동일한 기본 기능이 있는 대체 WMI 공급자가 있어야 합니다.
Windows 운영 체제를 실행하지 않는 컴퓨터와 PowerShell이 있지만 PowerShell 원격을 사용하도록 설정하지 않은 Windows 컴퓨터에서 CIM 세션 기능을 사용할 수 있습니다.
CIM 매개 변수를 사용하여 PowerShell 원격을 사용하도록 설정한 컴퓨터에서 CIM 모듈을 가져올 수도 있습니다. 여기에는 로컬 컴퓨터가 포함됩니다. 로컬 컴퓨터에서 CIM 세션을 만들 때 PowerShell은 WMI 대신 DCOM을 사용하여 세션을 만듭니다.
관련 링크
PowerShell