Install-Module
리포지토리에서 하나 이상의 모듈을 다운로드하고 로컬 컴퓨터에 설치합니다.
Syntax
Install-Module
[-Name] <string[]>
[-MinimumVersion <version>]
[-MaximumVersion <version>]
[-RequiredVersion <version>]
[-Repository <string[]>]
[-Scope <string>]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Install-Module
[-InputObject] <psobject[]>
[-Scope <string>]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
cmdlet은 Install-Module
온라인 리포지토리에서 지정된 조건을 충족하는 하나 이상의 모듈을 가져옵니다. cmdlet은 검색 결과가 유효한 모듈임을 확인하고 모듈 폴더를 설치 위치에 복사합니다. 설치된 모듈은 설치 후 자동으로 가져오지 않습니다.
지정된 모듈의 최소, 최대 및 정확한 버전에 따라 설치된 모듈을 필터링할 수 있습니다.
설치 중인 모듈의 이름이나 버전이 동일하거나 기존 모듈에 명령이 포함된 경우 경고 메시지가 표시됩니다. 모듈을 설치하고 경고를 재정의하려는 경우 매개 변수를 -Force
사용합니다. 리포지토리 설정에 따라 모듈 설치를 계속하려면 프롬프트에 응답해야 할 수 있습니다.
이러한 예제에서는 PowerShell 갤러리 유일하게 등록된 리포지토리로 사용합니다. Get-PSRepository
는 등록된 리포지토리를 표시합니다. 등록된 리포지토리가 여러 명 있는 경우 매개 변수를 -Repository
사용하여 리포지토리의 이름을 지정합니다.
예제
예제 1: 모듈 찾기 및 설치
이 예제에서는 리포지토리에서 모듈을 찾아서 모듈을 설치합니다.
Find-Module -Name PowerShellGet | Install-Module
는 Find-Module
Name 매개 변수를 사용하여 PowerShellGet 모듈을 지정합니다. 기본적으로 최신 버전의 모듈은 리포지토리에서 다운로드됩니다. 개체가 파이프라인 아래로 cmdlet으로 Install-Module
전송됩니다. Install-Module
는 의 모든 사용자에 대한 모듈을 설치합니다 $env:ProgramFiles\WindowsPowerShell\Modules
.
예제 2: 이름으로 모듈 설치
이 예제에서는 최신 버전의 PowerShellGet 모듈이 설치됩니다.
Install-Module -Name PowerShellGet
는 Install-Module
Name 매개 변수를 사용하여 PowerShellGet 모듈을 지정합니다. 기본적으로 최신 버전의 모듈은 리포지토리에서 다운로드되어 설치됩니다.
예제 3: 최소 버전을 사용하여 모듈 설치
이 예제에서는 PowerShellGet 모듈의 최소 버전이 설치됩니다. MinimumVersion 매개 변수는 설치해야 하는 모듈의 가장 낮은 버전을 지정합니다. 최신 버전의 모듈을 사용할 수 있는 경우 모든 사용자에 대해 해당 버전이 다운로드되고 설치됩니다.
Install-Module -Name PowerShellGet -MinimumVersion 2.0.1
는 Install-Module
Name 매개 변수를 사용하여 PowerShellGet 모듈을 지정합니다. MinimumVersion 매개 변수는 버전 2.0.1이 리포지토리에서 다운로드되어 설치되도록 지정합니다. 버전 2.0.4 를 사용할 수 있으므로 모든 사용자에 대해 해당 버전이 다운로드되고 설치됩니다.
예제 4: 모듈의 특정 버전 설치
이 예제에서는 특정 버전의 PowerShellGet 모듈이 설치됩니다.
Install-Module -Name PowerShellGet -RequiredVersion 2.0.0
는 Install-Module
Name 매개 변수를 사용하여 PowerShellGet 모듈을 지정합니다. RequiredVersion 매개 변수는 버전 2.0.0이 모든 사용자에 대해 다운로드되고 설치되도록 지정합니다.
예제 5: 현재 사용자에 대해서만 모듈 설치
이 예제에서는 현재 사용자에 대해서만 최신 버전의 모듈을 다운로드하고 설치합니다.
Install-Module -Name PowerShellGet -Scope CurrentUser
는 Install-Module
Name 매개 변수를 사용하여 PowerShellGet 모듈을 지정합니다.
Install-Module
최신 버전의 PowerShellGet 을 다운로드하여 현재 사용자의 디렉터리 에 설치합니다 $home\Documents\WindowsPowerShell\Modules
.
매개 변수
-Confirm
cmdlet을 실행 Install-Module
하기 전에 확인 메시지를 표시합니다.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
모듈을 설치하고 모듈 설치 충돌에 대한 경고 메시지를 재정의합니다. 컴퓨터에 이름이 같은 모듈이 이미 있는 경우 강제 적용을 사용하면 여러 버전을 설치할 수 있습니다. 이름과 버전이 같은 기존 모듈이 있는 경우 강제 적용은 해당 버전을 덮어씁니다.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
파이프라인 입력에 사용됩니다.
Type: | PSObject[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-MaximumVersion
설치할 단일 모듈의 최대 버전을 지정합니다. 여러 모듈을 설치하려는 경우 MaximumVersion을 사용할 수 없습니다. MaximumVersion 및 RequiredVersion은 동일한 Install-Module
명령에서 사용할 수 없습니다.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-MinimumVersion
설치할 단일 모듈의 최소 버전을 지정합니다. 사용 가능한 최신 버전의 모듈이 있는 경우 최신 버전이 설치됩니다. 여러 모듈을 설치하려는 경우 MinimumVersion을 사용할 수 없습니다. MinimumVersion 및 RequiredVersion은 동일한 Install-Module
명령에서 사용할 수 없습니다.
Type: | String |
Aliases: | Version |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
온라인 갤러리에서 설치할 모듈의 정확한 이름을 지정합니다. 모듈 이름의 쉼표로 구분된 목록이 허용됩니다. 모듈 이름은 리포지토리의 모듈 이름과 일치해야 합니다. 를 사용하여 Find-Module
모듈 이름 목록을 가져옵니다.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Repository
리포지토리 매개 변수를 사용하여 모듈을 다운로드하고 설치하는 데 사용되는 리포지토리를 지정합니다. 여러 리포지토리가 등록될 때 사용됩니다. 명령에 등록된 리포지토리 Install-Module
의 이름을 지정합니다. 리포지토리를 등록하려면 를 사용합니다 Register-PSRepository
.
등록된 리포지토리를 표시하려면 를 사용합니다 Get-PSRepository
.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequiredVersion
설치할 단일 모듈의 정확한 버전을 지정합니다. 지정된 버전의 리포지토리에 일치하는 항목이 없으면 오류가 표시됩니다. 여러 모듈을 설치하려는 경우 RequiredVersion을 사용할 수 없습니다. RequiredVersion은MinimumVersion 또는 MaximumVersion과 동일한 Install-Module
명령에서 사용할 수 없습니다.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Scope
모듈의 설치 범위를 지정합니다. 이 매개 변수에 허용되는 값은 AllUsers 및 CurrentUser입니다.
AllUsers scope 컴퓨터의 모든 사용자가 액세스할 수 있는 위치에 모듈을 설치합니다.
$env:ProgramFiles\WindowsPowerShell\Modules
CurrentUser는 컴퓨터의 현재 사용자만 액세스할 수 있는 위치에 모듈을 설치합니다.
$home\Documents\WindowsPowerShell\Modules
범위가 정의되지 않은 경우 기본값은 현재 세션에 따라 설정됩니다.
- 관리자 권한 PowerShell 세션의 경우 범위 기본값은 AllUsers입니다.
- PowerShellGet 버전 2.0.0 이상에서 상승되지 않은 PowerShell 세션의 경우 범위는 CurrentUser입니다.
- PowerShellGet 버전 1.6.7 이하의 승격되지 않은 PowerShell 세션의 경우 범위 가 정의되지 않고
Install-Module
실패합니다.
Type: | String |
Accepted values: | AllUsers, CurrentUser |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
명령이 실행된 경우 어떤 일이 발생하는지 표시 Install-Module
합니다. cmdlet은 실행되지 않습니다.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
입력
PSRepositoryItemInfo
Find-Module
는 파이프라인을 로 보낼 수 있는 PSRepositoryItemInfo 개체를 Install-Module
만듭니다.
참고
Install-Module
는 Windows 7 또는 Windows 2008 R2 이상 버전의 Windows에서 PowerShell 5.0 이상 릴리스에서 실행됩니다.
보안 모범 사례로, 처음으로 cmdlet 또는 함수를 실행하기 전에 모듈의 코드를 평가합니다. 악성 코드가 포함된 모듈이 실행되지 않도록 설치한 모듈은 설치 후 자동으로 가져오지 않습니다.
Name 매개 변수로 지정된 모듈 이름이 리포 Install-Module
지토리에 없으면 에서 오류를 반환합니다.
여러 모듈을 설치하려면 Name 매개 변수를 사용하고 모듈 이름의 쉼표로 구분된 배열을 지정합니다. 여러 모듈 이름을 지정하는 경우 MinimumVersion, MaximumVersion 또는 RequiredVersion을 사용할 수 없습니다. Find-Module
는 파이프라인을 로 보낼 수 있는 PSRepositoryItemInfo 개체를 Install-Module
만듭니다. 파이프라인은 단일 명령에 설치할 여러 모듈을 지정하는 또 다른 방법입니다.
기본적으로 AllUsers scope 대한 모듈은 에 $env:ProgramFiles\WindowsPowerShell\Modules
설치됩니다. 기본값은 PowerShell Desired State Configuration(DSC) 리소스를 설치할 때 혼동을 방지합니다.
모듈 설치가 실패하고 폴더 내에 같은 이름의 , .psd1
또는 .dll
이 없는 .psm1
경우 가져올 수 없습니다. Force 매개 변수를 사용하여 모듈을 설치합니다.
기존 모듈의 버전이 Name 매개 변수로 지정된 이름과 일치하고 MinimumVersion 또는 RequiredVersion 매개 변수 가 사용되지 Install-Module
않는 경우 자동으로 계속되지만 모듈을 설치하지는 않습니다.
기존 모듈의 버전이 MinimumVersion 매개 변수 값보다 크거나 RequiredVersion 매개 변수 Install-Module
값과 같으면 자동으로 계속되지만 모듈을 설치하지는 않습니다.
기존 모듈이 MinimumVersion 또는 RequiredVersion 매개 변수에 지정된 값과 일치하지 않으면 명령에서 Install-Module
오류가 발생합니다. 예를 들어 설치된 기존 모듈의 버전이 MinimumVersion 값보다 작거나 RequiredVersion 값과 같지 않은 경우입니다.