Powershell 모듈에서 "헬퍼" 기능을 숨기는 방법
저는 최종 사용자를 위한 몇 가지 기능과 최종 사용자가 호출하지 않는 몇 가지 내부 도우미 기능을 가진 모듈 xy를 가지고 있습니다.
Get-Command -Module xy -CommandType function
에는 모듈 폴더에 있는 모든 기능(예:get-foo
그리고.get-foo_helper
)
숨을 수 있는 방법이 있습니까?get-foo_helper
다음을 사용하는 최종 사용자의 기능:
Get-Command -Module tcaps -CommandType function
제가 한 일 중 하나는 내보낼 함수에 동사-명사 명명 규칙을 사용하는 것이지만 도우미 함수에서는 하이픈을 생략하는 것입니다.
그리고나서,export-modulemember *-*
에서는 내보낼 내용만 내보냅니다.
Export-ModuleMember를 모듈 하단에 추가하기만 하면 됩니다.
모듈에 다음 기능이 있다고 가정합니다.
New-Function0
New-Function1
New-Function2
New-HelperFunction0
모듈 파일의 맨 아래에 다음 행을 추가합니다.
Export-ModuleMember -function New-Function0
Export-ModuleMember -function New-Function1
Export-ModuleMember -function New-Function2
이 모듈에서 Import-Module을 실행하면 Export-ModuleMember에서 정의한 기능만 가져옵니다.
이제 새로운 기능1의 별칭도 내보내고 싶다고 가정해 보겠습니다.모듈의 끝에 다음을 추가합니다.
Export-ModuleMember -alias nf1
이제 Import-Module을 사용하면 New-Function1의 별칭(nf1)과 함께 사용자가 정의한 함수가 로드됩니다.
대부분의 경우 선언된 함수는 스크립트 블록(익명 함수)으로 대체될 수 있습니다.
Export-ModuleMember를 사용하거나 모듈 매니페스트를 만들고 내보낸 명령을 지정할 수 있습니다.새 모듈 매니페스트를 사용하여 매니페스트 파일을 만들 수 있습니다.
언급URL : https://stackoverflow.com/questions/6032344/how-to-hide-helper-functions-in-powershell-modules
'programing' 카테고리의 다른 글
Oracle 패키지에 모든 예외를 기록하는 방법은 무엇입니까? (0) | 2023.08.20 |
---|---|
시간 초과 jQuery 효과 (0) | 2023.08.20 |
Grafana에 대해 SQL 쿼리로 선택한 시간 간격을 기반으로 동적으로 가동 시간 계산 (0) | 2023.08.20 |
인쇄 스타일 시트를 개발하고 테스트하는 더 빠른 방법(매번 인쇄 미리 보기 사용 안 함) (0) | 2023.08.20 |
Ubuntu에서 apt-get 업데이트를 실행할 때 Docker Repository에 릴리스 파일이 없음 (0) | 2023.08.20 |