Test-ModuleManifest
모듈 매니페스트 파일이 모듈의 내용을 정확하게 설명하는지 확인합니다.
구문
Default (기본값)
Test-ModuleManifest
[-Path] <String>
[<CommonParameters>]
Description
Test-ModuleManifest cmdlet은 모듈 매니페스트(.psd1) 파일에 나열된 파일이 실제로 지정된 경로에 있는지 확인합니다.
이 cmdlet은 모듈 작성자가 매니페스트 파일을 테스트할 수 있도록 설계되었습니다. 또한 모듈 사용자는 스크립트 및 명령에서 이 cmdlet을 사용하여 모듈에 의존하는 스크립트를 실행하기 전에 오류를 검색할 수 있습니다.
Test-ModuleManifest 모듈을 나타내는 개체를 반환합니다.
Get-Module 반환하는 것과 동일한 형식의 개체입니다. 매니페스트에 지정된 위치에 파일이 없는 경우 cmdlet은 누락된 각 파일에 대한 오류도 생성합니다.
예제
예제 1: 매니페스트 테스트
Test-ModuleManifest -Path "$PSHOME\Modules\TestModule.psd1"
이 명령은 TestModule.psd1 모듈 매니페스트를 테스트합니다.
예제 2: 파이프라인을 사용하여 매니페스트 테스트
"$PSHOME\Modules\TestModule.psd1" | Test-ModuleManifest
Test-ModuleManifest : The specified type data file 'C:\Windows\System32\Wi
ndowsPowerShell\v1.0\Modules\TestModule\TestTypes.ps1xml' could not be processed because the file was not found. Please correct the path and try again.
At line:1 char:34
+ "$PSHOME\Modules\TestModule.psd1" | Test-ModuleManifest <<<<
+ CategoryInfo : ResourceUnavailable: (C:\Windows\System32\WindowsPowerShell\v1.0\Modules\TestModule\TestTypes.ps1xml:String) [Test-ModuleManifest], FileNotFoundException
+ FullyQualifiedErrorId : Modules_TypeDataFileNotFound,Microsoft.PowerShell.Commands.TestModuleManifestCommandName
Name : TestModule
Path : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\TestModule\TestModule.psd1
Description :
Guid : 6f0f1387-cd25-4902-b7b4-22cff6aefa7b
Version : 1.0
ModuleBase : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\TestModule
ModuleType : Manifest
PrivateData :
AccessMode : ReadWrite
ExportedAliases : {}
ExportedCmdlets : {}
ExportedFunctions : {}
ExportedVariables : {}
NestedModules : {}
이 명령은 파이프라인 연산자(|)를 사용하여 경로 문자열을 Test-ModuleManifest보냅니다.
명령 출력은 매니페스트에 나열된 TestTypes.ps1xml 파일을 찾을 수 없기 때문에 테스트가 실패했음을 보여 줍니다.
예제 3: 모듈 매니페스트를 테스트하는 함수 작성
function Test-ManifestBool ($path)
{$a = dir $path | Test-ModuleManifest -ErrorAction SilentlyContinue; $?}
이 함수는 Test-ModuleManifest같지만 부울 값을 반환합니다. 매니페스트가 테스트를 통과하면 함수가 $true 반환하고, 그렇지 않으면 $false.
이 함수는 Get-ChildItem cmdlet, 별칭 = dir을 사용하여 $path 변수로 지정된 모듈 매니페스트를 가져옵니다. 이 명령은 파이프라인 연산자(|)를 사용하여 파일 개체를 Test-ModuleManifest전달합니다.
Test-ModuleManifest
ErrorAction 일반 매개 변수를 SilentlyContinue 값과 함께 사용하여 명령이 생성하는 오류를 표시하지 않습니다. 또한 $a 변수에서 반환하는 Test-ModuleManifest 개체를 저장합니다. 따라서 개체가 표시되지 않습니다.
그런 다음, 별도의 명령에서 함수는 $? 자동 변수의 값을 표시합니다. 이전 명령에서 오류를 생성하지 않으면 명령이 $true표시되고, 그렇지 않으면 $false.
이 함수는 Import-Module 명령이나 모듈을 사용하는 명령 앞에 올 수 있는 명령과 같은 조건문에서 사용할 수 있습니다.
매개 변수
-Path
매니페스트 파일의 경로 및 파일 이름을 지정합니다.
.psd1 파일 이름 확장명을 포함하는 모듈 매니페스트 파일의 선택적 경로와 이름을 입력합니다. 기본 위치는 현재 디렉터리입니다. 와일드카드 문자는 지원되지만 단일 모듈 매니페스트 파일로 확인되어야 합니다.
이 매개 변수는 필수입니다. 경로를 Test-ModuleManifest로 전달할 수도 있습니다.
매개 변수 속성
| 형식: | String |
| Default value: | None |
| 와일드카드 지원: | True |
| DontShow: | False |
매개 변수 집합
(All)
| Position: | 0 |
| 필수: | True |
| 파이프라인의 값: | True |
| 속성 이름별 파이프라인의 값: | True |
| 나머지 인수의 값: | False |
CommonParameters
이 cmdlet은 일반적인 매개 변수인 -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction 및 -WarningVariable 매개 변수를 지원합니다. 자세한 내용은 about_CommonParameters를 참조하세요.
입력
String
모듈 매니페스트에 대한 경로를 이 cmdlet으로 파이프할 수 있습니다.
출력
PSModuleInfo
이 cmdlet은 모듈을 나타내는 PSModuleInfo 개체를 반환합니다. 매니페스트에 오류가 있더라도 이 개체를 반환합니다.