다음을 통해 공유


Install-Module

리포지토리에서 하나 이상의 모듈을 다운로드하고 로컬 컴퓨터에 설치합니다.

구문

NameParameterSet (기본값)

Install-Module
    [-Name] <string[]>
    [-MinimumVersion <version>]
    [-MaximumVersion <version>]
    [-RequiredVersion <version>]
    [-Repository <string[]>]
    [-Scope <string>]
    [-Force]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

InputObject

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

Name Find-Module 매개 변수 를 사용하여 PowerShellGet 모듈을 지정합니다. 기본적으로 최신 버전의 모듈은 리포지토리에서 다운로드됩니다. 개체가 파이프라인 아래로 Install-Module cmdlet으로 전송됩니다. Install-Module 에서 모든 사용자에 대한 모듈을 설치합니다 $env:ProgramFiles\WindowsPowerShell\Modules.

예제 2: 이름으로 모듈 설치

이 예제에서는 최신 버전의 PowerShellGet 모듈이 설치됩니다.

Install-Module -Name PowerShellGet

Name Install-Module 매개 변수 를 사용하여 PowerShellGet 모듈을 지정합니다. 기본적으로 최신 버전의 모듈은 리포지토리에서 다운로드되어 설치됩니다.

예제 3: 최소 버전을 사용하여 모듈 설치

이 예제에서는 PowerShellGet 모듈의 최소 버전이 설치됩니다. MinimumVersion 매개 변수는 설치해야 하는 모듈의 가장 낮은 버전을 지정합니다. 최신 버전의 모듈을 사용할 수 있는 경우 모든 사용자에 대해 해당 버전이 다운로드되고 설치됩니다.

Install-Module -Name PowerShellGet -MinimumVersion 2.0.1

Name Install-Module 매개 변수 를 사용하여 PowerShellGet 모듈을 지정합니다. MinimumVersion 매개 변수는 버전 2.0.1이 리포지토리에서 다운로드되고 설치되도록 지정합니다. 버전 2.0.4 를 사용할 수 있으므로 해당 버전은 모든 사용자에 대해 다운로드되고 설치됩니다.

예제 4: 특정 버전의 모듈 설치

이 예제에서는 특정 버전의 PowerShellGet 모듈이 설치됩니다.

Install-Module -Name PowerShellGet -RequiredVersion 2.0.0

Name Install-Module 매개 변수 를 사용하여 PowerShellGet 모듈을 지정합니다. RequiredVersion 매개 변수는 모든 사용자에 대해 버전 2.0.0이 다운로드되고 설치되도록 지정합니다.

예제 5: 현재 사용자에 대해서만 모듈 설치

이 예제에서는 현재 사용자에 대해서만 최신 버전의 모듈을 다운로드하고 설치합니다.

Install-Module -Name PowerShellGet -Scope CurrentUser

Name Install-Module 매개 변수 를 사용하여 PowerShellGet 모듈을 지정합니다. Install-Module 최신 버전의 PowerShellGet 을 다운로드하여 현재 사용자의 디렉터리에 설치합니다 $home\Documents\WindowsPowerShell\Modules.

매개 변수

-Confirm

Install-Module cmdlet을 실행하기 전에 확인 메시지를 표시합니다.

매개 변수 속성

형식:SwitchParameter
Default value:False
와일드카드 지원:False
DontShow:False
별칭:cf(cf)

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-Force

모듈을 설치하고 모듈 설치 충돌에 대한 경고 메시지를 재정의합니다. 컴퓨터에 이름이 같은 모듈이 이미 있는 경우 Force 를 사용하면 여러 버전을 설치할 수 있습니다. 이름과 버전이 같은 기존 모듈이 있는 경우 강제로 해당 버전을 덮어씁니다.

매개 변수 속성

형식:SwitchParameter
Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-InputObject

파이프라인 입력에 사용됩니다.

매개 변수 속성

형식:

PSObject[]

Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

InputObject
Position:0
필수:True
파이프라인의 값:True
속성 이름별 파이프라인의 값:True
나머지 인수의 값:False

-MaximumVersion

설치할 단일 모듈의 최대 버전을 지정합니다. 여러 모듈을 설치하려는 경우 MaximumVersion을 사용할 수 없습니다. MaximumVersionRequiredVersion 은 동일한 Install-Module 명령에서 사용할 수 없습니다.

매개 변수 속성

형식:String
Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

NameParameterSet
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:True
나머지 인수의 값:False

-MinimumVersion

설치할 단일 모듈의 최소 버전을 지정합니다. 사용 가능한 최신 버전의 모듈이 있는 경우 최신 버전이 설치됩니다. 여러 모듈을 설치하려는 경우 MinimumVersion을 사용할 수 없습니다. MinimumVersionRequiredVersion 은 동일한 Install-Module 명령에서 사용할 수 없습니다.

매개 변수 속성

형식:String
Default value:None
와일드카드 지원:False
DontShow:False
별칭:버전

매개 변수 집합

NameParameterSet
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:True
나머지 인수의 값:False

-Name

온라인 갤러리에서 설치할 모듈의 정확한 이름을 지정합니다. 모듈 이름의 쉼표로 구분된 목록이 허용됩니다. 모듈 이름은 리포지토리의 모듈 이름과 일치해야 합니다. 모듈 이름 목록을 가져오는 데 사용합니다 Find-Module .

매개 변수 속성

형식:

String[]

Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

NameParameterSet
Position:0
필수:True
파이프라인의 값:False
속성 이름별 파이프라인의 값:True
나머지 인수의 값:False

-Repository

Repository 매개 변수를 사용하여 모듈을 다운로드하고 설치하는 데 사용되는 리포지토리를 지정합니다. 여러 리포지토리가 등록될 때 사용됩니다. 명령에 등록된 리포지 Install-Module 토리의 이름을 지정합니다. 리포지 Register-PSRepository토리를 등록하려면 . 등록된 리포지 Get-PSRepository토리를 표시하려면 .

매개 변수 속성

형식:

String[]

Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

NameParameterSet
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-RequiredVersion

설치할 단일 모듈의 정확한 버전을 지정합니다. 지정된 버전의 리포지토리에 일치하는 항목이 없으면 오류가 표시됩니다. 여러 모듈을 설치하려는 경우 RequiredVersion을 사용할 수 없습니다. RequiredVersionInstall-Module 또는 MaximumVersion과 동일한 명령에서 사용할 수 없습니다.

매개 변수 속성

형식:String
Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

NameParameterSet
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:True
나머지 인수의 값:False

-Scope

모듈의 설치 범위를 지정합니다. 이 매개 변수에 허용되는 값은 AllUsersCurrentUser입니다.

AllUsers 범위는 컴퓨터의 모든 사용자가 액세스할 수 있는 위치에 모듈을 설치합니다.

$env:ProgramFiles\WindowsPowerShell\Modules

CurrentUser는 컴퓨터의 현재 사용자만 액세스할 수 있는 위치에 모듈을 설치합니다.

$home\Documents\WindowsPowerShell\Modules

범위가 정의되지 않은 경우 기본값은 현재 세션을 기반으로 설정됩니다.

  • 관리자 권한 PowerShell 세션의 경우 범위는 기본적으로 AllUsers로 설정됩니다.
  • PowerShellGet 버전 2.0.0 이상에서 관리자 권한이 없는 PowerShell 세션의 경우 범위는CurrentUser입니다.
  • PowerShellGet 버전 1.6.7 이하의 승격되지 않은 PowerShell 세션의 경우 범위 가 정의되지 않고 Install-Module 실패합니다.

매개 변수 속성

형식:String
Default value:None
허용되는 값:AllUsers, CurrentUser
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-WhatIf

명령이 실행된 경우 어떤 일이 발생하는지 보여줍니다 Install-Module . cmdlet이 실행되지 않습니다.

매개 변수 속성

형식:SwitchParameter
Default value:False
와일드카드 지원:False
DontShow:False
별칭:위스콘신

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

CommonParameters

이 cmdlet은 일반적인 매개 변수인 -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction 및 -WarningVariable 매개 변수를 지원합니다. 자세한 내용은 about_CommonParameters를 참조하세요.

입력

PSRepositoryItemInfo

Find-Module 는 파이프라인을 아래로 보낼 수 있는 PSRepositoryItemInfo 개체를 Install-Module만듭니다.

참고

Install-Module 는 PowerShell 5.0 이상 릴리스, Windows 7 또는 Windows 2008 R2 이상 릴리스에서 실행됩니다.

보안 모범 사례로, 처음으로 cmdlet 또는 함수를 실행하기 전에 모듈의 코드를 평가합니다. 악성 코드가 포함된 모듈의 실행을 방지하기 위해 설치된 모듈은 설치 후 자동으로 가져오지 않습니다.

Name 매개 변수로 지정된 모듈 이름이 리포지토리 Install-Module 에 없으면 오류를 반환합니다.

여러 모듈을 설치하려면 Name 매개 변수를 사용하고 모듈 이름의 쉼표로 구분된 배열을 지정합니다. 모듈 이름을 여러 개 지정하는 경우 MinimumVersion, MaximumVersion 또는 RequiredVersion을 사용할 수 없습니다. Find-Module 는 파이프라인을 아래로 보낼 수 있는 PSRepositoryItemInfo 개체를 Install-Module만듭니다. 파이프라인은 단일 명령에 설치할 여러 모듈을 지정하는 또 다른 방법입니다.

기본적으로 AllUsers 범위에 대한 모듈은 에 $env:ProgramFiles\WindowsPowerShell\Modules설치됩니다. 기본값은 PowerShell DSC(필요한 상태 구성) 리소스를 설치할 때 혼동을 방지합니다.

모듈 설치가 실패하고 폴더 내에 , .psm1, 또는 .psd1 같은 이름의 모듈이 없는 .dll경우 가져올 수 없습니다. Force 매개 변수를 사용하여 모듈을 설치합니다.

기존 모듈의 버전이 Name 매개 변수로 지정된 이름과 일치하고 MinimumVersion 또는 RequiredVersion 매개 변수가 사용되지 Install-Module 않는 경우 자동으로 계속되지만 모듈을 설치하지는 않습니다.

기존 모듈의 버전이 MinimumVersion 매개 변수의 값보다 크거나 RequiredVersion 매개 변수의 Install-Module 값보다 같으면 자동으로 계속되지만 모듈을 설치하지는 않습니다.

기존 모듈이 MinimumVersion 또는 RequiredVersion 매개 변수로 지정된 값과 일치하지 않으면 명령에서 Install-Module 오류가 발생합니다. 예를 들어 설치된 기존 모듈의 버전이 MinimumVersion 값보다 작거나 RequiredVersion 값과 같지 않은 경우입니다.