Export-ModuleMember
내보내는 모듈 멤버를 지정합니다.
구문
Export-ModuleMember [[-Function] <string[]>] [-Alias <string[]>] [-Cmdlet <string[]>] [-Variable <string[]>] [<CommonParameters>]
설명
Export-ModuleMember cmdlet은 스크립트 모듈(.psm1) 파일이나 New-Module cmdlet을 사용하여 만든 동적 모듈에서 내보내는 모듈 멤버(예: cmdlet, 함수, 변수 및 별칭)를 지정합니다. 이 cmdlet은 스크립트 모듈 파일이나 동적 모듈에서만 사용할 수 있습니다.
스크립트 모듈에 Export-ModuleMember 명령이 포함되어 있지 않으면 스크립트 모듈의 함수만 내보내고 변수와 별칭은 내보내지 않습니다. 스크립트 모듈에 Export-ModuleMember 명령이 포함되어 있으면 Export-ModuleMember 명령에 지정된 멤버만 내보냅니다.
스크립트 모듈에 여러 Export-ModuleMember 명령이 포함되어 있으면 Export-ModuleMember 명령에 나열된 멤버만 내보냅니다.
Export-ModuleMember를 사용하여 스크립트 모듈이 다른 모듈에서 가져오는 멤버를 내보낼 수도 있습니다.
매개 변수
-Alias <string[]>
스크립트 모듈 파일에서 내보내는 별칭을 지정합니다. 별칭 이름을 입력하십시오. 와일드카드를 사용할 수 있습니다.
필수 여부 |
false |
위치 |
named |
기본값 |
없음 |
파이프라인 입력 적용 여부 |
true (ByPropertyName) |
와일드카드 문자 적용 여부 |
true |
-Cmdlet <string[]>
스크립트 모듈 파일에서 내보내는 cmdlet을 지정합니다. cmdlet 이름을 입력하십시오. 와일드카드를 사용할 수 있습니다.
스크립트 모듈 파일에서 cmdlet을 만들 수 없지만 cmdlet을 이진 모듈에서 스크립트 모듈로 가져온 다음 스크립트 모듈에서 다시 내보낼 수 있습니다.
필수 여부 |
false |
위치 |
named |
기본값 |
없음 |
파이프라인 입력 적용 여부 |
true (ByPropertyName) |
와일드카드 문자 적용 여부 |
true |
-Function <string[]>
스크립트 모듈 파일에서 내보내는 함수를 지정합니다. 함수 이름을 입력하십시오. 와일드카드를 사용할 수 있습니다. 또한 함수 이름 문자열을 Export-ModuleMember로 파이프할 수 있습니다.
필수 여부 |
false |
위치 |
1 |
기본값 |
없음 |
파이프라인 입력 적용 여부 |
true (ByValue, ByPropertyName) |
와일드카드 문자 적용 여부 |
true |
-Variable <string[]>
스크립트 모듈 파일에서 내보내는 변수를 지정합니다. 달러 기호 없이 변수 이름을 입력하십시오. 와일드카드를 사용할 수 있습니다.
필수 여부 |
false |
위치 |
named |
기본값 |
없음 |
파이프라인 입력 적용 여부 |
true (ByPropertyName) |
와일드카드 문자 적용 여부 |
true |
<CommonParameters>
이 cmdlet은 -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, -OutVariable 등의 일반 매개 변수를 지원합니다. 자세한 내용은 about_commonparameters.
입력 및 출력
입력 유형은 cmdlet으로 파이프할 수 있는 개체의 유형입니다. 반환 유형은 cmdlet에서 반환되는 개체의 유형입니다.
입력 |
System.String 함수 이름 문자열을 Export-ModuleMember로 파이프할 수 있습니다. |
출력 |
없음 이 cmdlet은 어떠한 출력도 생성하지 않습니다. |
참고
내보내는 멤버 목록에서 멤버를 제외하려면 다른 모든 요소를 나열하는 Export-ModuleMember 명령을 추가하되 제외할 멤버를 생략합니다.
예 1
C:\PS>Export-ModuleMember -function * -alias *
설명
-----------
이 명령은 스크립트 모듈에 정의된 별칭을 스크립트 모듈에 정의된 함수와 함께 내보냅니다.
기본적으로 내보내지 않는 별칭을 내보내려면 함수도 명시적으로 지정해야 합니다. 이렇게 하지 않으면 별칭만 내보내게 됩니다.
예 2
C:\PS>Export-ModuleMember -function Get-Test, New-Test, Start-Test -alias gtt, ntt, stt
설명
-----------
이 명령은 스크립트 모듈에 정의된 세 별칭과 세 함수를 내보냅니다.
이 명령 형식을 사용하여 모듈 멤버의 이름을 지정할 수 있습니다.
예 3
C:\PS>Export-ModuleMember
설명
-----------
이 명령은 스크립트 모듈에 정의된 멤버를 내보내지 않도록 지정합니다.
이 명령은 모듈 멤버를 내보내지 않도록 하지만 멤버를 숨기지는 않습니다. 사용자는 모듈 멤버를 읽고 복사하거나 호출 연산자(&)를 사용하여 내보내지 않는 모듈 멤버를 호출할 수 있습니다.
예 4
C:\PS>Export-ModuleMember -variable increment
설명
-----------
이 명령은 스크립트 모듈에서 $increment 변수만 내보내고 다른 멤버는 내보내지 않습니다.
모듈의 함수를 내보내는 것은 물론 변수도 내보내려면 Export-ModuleMember 명령에 모든 함수의 이름과 변수 이름이 포함되어야 합니다.
예 5
C:\PS># From TestModule.psm1
function new-test
{ <function code> }
export-modulemember -function new-test
function validate-test
{ <function code> }
function start-test
{ <function code> }
set-alias stt start-test
export-modulemember -function *-test -alias stt
설명
-----------
이들 명령은 여러 Export-ModuleMember 명령이 스크립트 모듈(.psm1) 파일에서 해석되는 방식을 보여 줍니다.
이들 명령은 세 함수와 하나의 별칭을 만든 다음 그 중 두 함수와 별칭을 내보냅니다.
Export-ModuleMember 명령을 사용하지 않는 경우 세 함수를 모두 내보내지만 별칭은 내보내지 않습니다. Export-ModuleMember 명령을 사용하는 경우 Get-Test 및 Start-Test 함수와 STT 별칭만 내보냅니다.
예 6
C:\PS>new-module -script {function SayHello {"Hello!"}; set-alias Hi SayHello; Export-ModuleMember -alias Hi -function SayHello}
설명
-----------
이 명령은 New-Module cmdlet을 사용하여 만든 동적 모듈에서 Export-ModuleMember를 사용하는 방법을 보여 줍니다.
이 예에서 Export-ModuleMember는 동적 모듈에서 "Hi" 별칭과 "SayHello" 함수를 모두 내보내는 데 사용됩니다.
예 7
C:\PS>function export
{
param (
[parameter(mandatory=$true)] [validateset("function","variable")] $type,
[parameter(mandatory=$true)] $name,
[parameter(mandatory=$true)] $value
)
if ($type -eq "function")
{
Set-item "function:script:$name" $value
Export-ModuleMember $name
}
else
{
Set-Variable -scope Script $name $value
Export-ModuleMember -variable $name
}
}
export function New-Test
{
...
}
function helper
{
...
}
export variable interval 0
$interval = 2
설명
-----------
이 예에는 함수를 선언하거나 변수를 만든 다음 함수 또는 변수에 대한 Export-ModuleMember 명령을 쓰는 Export라는 함수가 포함되어 있습니다. 이 함수를 사용하면 단일 명령으로 함수 또는 변수를 선언하고 내보낼 수 있습니다.
Export 함수를 사용하려면 스크립트 모듈에 포함합니다. 함수를 내보내려면 Function 키워드 앞에 "Export"를 입력합니다.
변수를 내보내려면 다음 형식을 사용하여 변수를 선언하고 변수 값을 설정하십시오.
export variable <variable-name> <value>
이 예의 명령은 올바른 형식을 보여 줍니다. 이 예에서는 New-Test 함수와 $Interval 변수만 내보냅니다.