Install-Module

Mengunduh satu atau beberapa modul dari repositori, dan menginstalnya di komputer lokal.

Sintaks

Install-Module
       [-Name] <String[]>
       [-MinimumVersion <String>]
       [-MaximumVersion <String>]
       [-RequiredVersion <String>]
       [-Repository <String[]>]
       [-Credential <PSCredential>]
       [-Scope <String>]
       [-Proxy <Uri>]
       [-ProxyCredential <PSCredential>]
       [-AllowClobber]
       [-SkipPublisherCheck]
       [-Force]
       [-AllowPrerelease]
       [-AcceptLicense]
       [-PassThru]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Install-Module
       [-InputObject] <PSObject[]>
       [-Credential <PSCredential>]
       [-Scope <String>]
       [-Proxy <Uri>]
       [-ProxyCredential <PSCredential>]
       [-AllowClobber]
       [-SkipPublisherCheck]
       [-Force]
       [-AcceptLicense]
       [-PassThru]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Deskripsi

Install-Module Cmdlet mendapatkan satu atau beberapa modul yang memenuhi kriteria tertentu dari repositori online. Cmdlet memverifikasi bahwa hasil pencarian adalah modul yang valid dan menyalin folder modul ke lokasi penginstalan. Modul yang diinstal tidak diimpor secara otomatis setelah penginstalan. Anda dapat memfilter modul mana yang diinstal berdasarkan versi minimum, maksimum, dan tepat dari modul yang ditentukan.

Ini adalah cmdlet proksi untuk Get-InstalledPSResource cmdlet di Microsoft.PowerShell.PSResourceGet. Untuk informasi selengkapnya, lihat Install-PSResource.

Contoh

Contoh 1: Menemukan dan menginstal modul

Contoh ini menemukan modul di repositori dan menginstal modul.

Find-Module -Name PowerShellGet | Install-Module

Find-Module menggunakan parameter Nama untuk menentukan modul PowerShellGet. Secara default, versi terbaru modul diunduh dari repositori. Objek dikirim ke alur ke Install-Module cmdlet. Install-Module menginstal modul untuk semua pengguna di $env:ProgramFiles\PowerShell\Modules.

Contoh 2: Menginstal modul berdasarkan nama

Dalam contoh ini, versi terbaru modul PowerShellGet diinstal.

Install-Module -Name PowerShellGet

Install-Module menggunakan parameter Nama untuk menentukan modul PowerShellGet. Secara default, versi terbaru modul diunduh dari repositori dan diinstal.

Contoh 3: Menginstal modul menggunakan versi minimumnya

Dalam contoh ini, versi minimum modul PowerShellGet diinstal. Parameter MinimumVersion menentukan versi terendah modul yang harus diinstal. Jika versi modul yang lebih baru tersedia, versi tersebut diunduh dan diinstal untuk semua pengguna.

Install-Module -Name PowerShellGet -MinimumVersion 2.0.1

Install-Module menggunakan parameter Nama untuk menentukan modul PowerShellGet. Parameter MinimumVersion menentukan bahwa versi 2.0.1 diunduh dari repositori dan diinstal. Karena versi 2.0.4 tersedia, versi tersebut diunduh dan diinstal untuk semua pengguna.

Contoh 4: Menginstal versi modul tertentu

Dalam contoh ini, versi tertentu dari modul PowerShellGet diinstal.

Install-Module -Name PowerShellGet -RequiredVersion 2.0.0

Install-Module menggunakan parameter Nama untuk menentukan modul PowerShellGet. Parameter RequiredVersion menentukan bahwa versi 2.0.0 diunduh dan diinstal untuk semua pengguna.

Contoh 5: Menginstal modul hanya untuk pengguna saat ini

Contoh ini mengunduh dan menginstal versi terbaru modul, hanya untuk pengguna saat ini.

Install-Module -Name PowerShellGet -Scope CurrentUser

Install-Module menggunakan parameter Nama untuk menentukan modul PowerShellGet. Install-Module mengunduh dan menginstal versi terbaru PowerShellGet ke direktori pengguna saat ini, $HOME\Documents\PowerShell\Modules.

Contoh 6: Menginstal versi prarilis terbaru modul

Contoh ini menunjukkan cara menginstal versi terbaru modul ketika versi tersebut adalah versi prarilis. Menginstal versi prarilis memerlukan parameter AllowPrerelease .

Install-Module -Name Microsoft.PowerShell.Crescendo -AllowPrerelease

Dengan menggunakan metode ini, Anda mendapatkan versi terbaru yang tersedia. Jika versi terbaru bukan prarilis, Anda mendapatkan versi stabil terbaru modul.

Contoh 7: Menginstal versi prarilis tertentu dari modul

Contoh ini menunjukkan cara menginstal versi prarilis tertentu dari modul. Find-Module Cmdlet dapat digunakan untuk menemukan versi modul prarilis di Galeri PowerShell.

Versi prarilis memiliki format <version_number>-<prerelease_label>.

Find-Module PSReadLine -AllVersions -AllowPrerelease | Select-Object -First 5

Version        Name             Repository       Description
-------        ----             ----------       -----------
2.2.6          PSReadLine       PSGallery        Great command line editing in the PowerS…
2.2.5          PSReadLine       PSGallery        Great command line editing in the PowerS…
2.2.4-beta1    PSReadLine       PSGallery        Great command line editing in the PowerS…
2.2.3          PSReadLine       PSGallery        Great command line editing in the PowerS…
2.2.2          PSReadLine       PSGallery        Great command line editing in the PowerS…

Install-Module -Name PSReadLine -RequiredVersion 2.2.4-beta1 -AllowPrerelease

Gunakan versi yang diperlihatkan di Galeri PowerShell untuk nilai parameter RequiredVersion .

Parameter

-AcceptLicense

Untuk modul yang memerlukan lisensi, AcceptLicense secara otomatis menerima perjanjian lisensi selama penginstalan. Untuk informasi selengkapnya, lihat Modul yang Memerlukan Penerimaan Lisensi.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AllowClobber

Mengambil alih pesan peringatan tentang konflik penginstalan tentang perintah yang ada pada komputer. Menimpa perintah yang ada yang memiliki nama yang sama dengan perintah yang diinstal oleh modul. AllowClobber dan Force dapat digunakan bersama-sama dalam perintah Install-Module .

Cmdlet proksi mengubah nilai parameter ini menjadi parameter NoClobber cmdlet Install-PSResource .

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AllowPrerelease

Memungkinkan Anda menginstal modul yang ditandai sebagai pra-rilis.

Cmdlet proksi memetakan parameter ini ke parameter Prarilis dari Install-PSResource.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Meminta konfirmasi sebelum menjalankan Install-Module cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Menentukan akun pengguna yang memiliki hak untuk menginstal modul untuk penyedia atau sumber paket tertentu.

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Force

Cmdlet proksi mengabaikan parameter ini karena tidak didukung oleh Install-PSResource.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Digunakan untuk input alur. Kesalahan akan muncul jika nilai diberikan langsung ke InputObject. Gunakan alur untuk meneruskan objek dengan parameter InputObject .

Type:PSObject[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-MaximumVersion

Cmdlet proksi menggunakan nilai parameter ini untuk membuat string pencarian versi NuGet untuk digunakan dengan parameter Versi .Install-PSResource

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MinimumVersion

Cmdlet proksi menggunakan nilai parameter ini untuk membuat string pencarian versi NuGet untuk digunakan dengan parameter Versi .Install-PSResource

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Name

Menentukan nama modul yang tepat untuk diinstal dari galeri online. Daftar nama modul yang dipisahkan koma diterima. Nama modul harus cocok dengan nama modul di repositori. Gunakan Find-Module untuk mendapatkan daftar nama modul.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-PassThru

Saat menggunakan parameter PassThru , Install-Module menghasilkan objek PSRepositoryItemInfo untuk modul. Ini adalah informasi yang sama dengan yang Anda dapatkan dari Find-Module cmdlet .

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Proxy

Cmdlet proksi mengabaikan parameter ini karena tidak didukung oleh Install-PSResource.

Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ProxyCredential

Cmdlet proksi mengabaikan parameter ini karena tidak didukung oleh Install-PSResource.

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Repository

Gunakan parameter Repositori untuk menentukan nama repositori tempat mengunduh dan menginstal modul. Digunakan ketika beberapa repositori terdaftar. Menentukan nama repositori terdaftar dalam Install-Module perintah . Untuk mendaftarkan repositori, gunakan Register-PSRepository. Untuk menampilkan repositori terdaftar, gunakan Get-PSRepository.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RequiredVersion

Cmdlet proksi menggunakan nilai parameter ini untuk membuat string pencarian versi NuGet untuk digunakan dengan parameter Versi .Install-PSResource

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Scope

Menentukan cakupan penginstalan modul. Nilai yang dapat diterima untuk parameter ini adalah AllUsers dan CurrentUser.

Cakupan AllUsers menginstal modul di lokasi yang dapat diakses oleh semua pengguna komputer:

$env:ProgramFiles\PowerShell\Modules

CurrentUser menginstal modul di lokasi yang hanya dapat diakses oleh pengguna komputer saat ini. Contohnya:

$HOME\Documents\PowerShell\Modules

Saat tidak ada Cakupan yang ditentukan, default diatur berdasarkan versi PowerShellGet.

  • Dalam versi PowerShellGet 1.x, defaultnya adalah AllUsers, yang memerlukan elevasi untuk penginstalan.
  • Untuk PowerShellGet versi 2.0.0 ke atas di PowerShell 6 atau yang lebih tinggi:
    • Defaultnya adalah CurrentUser, yang tidak memerlukan elevasi untuk penginstalan.
    • Jika Anda menjalankan dalam sesi yang ditingkatkan, defaultnya adalah AllUsers.
Type:String
Accepted values:CurrentUser, AllUsers
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SkipPublisherCheck

Cmdlet proksi mengubah parameter ini menjadi AthenticodeCheck sebelum memanggil Install-PSResource.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Menunjukkan apa yang akan terjadi jika perintah Install-Module dijalankan. Cmdlet tidak dijalankan.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Input

PSRepositoryItemInfo

Find-Module membuat objek PSRepositoryItemInfo yang dapat dikirimkan alur ke Install-Module.

String[]

PSObject[]

String

PSCredential

Uri

Output

Microsoft.PowerShell.Commands.PSRepositoryItemInfo

Saat menggunakan parameter PassThru , Install-Module menghasilkan objek PSRepositoryItemInfo untuk modul. Ini adalah informasi yang sama dengan yang Anda dapatkan dari Find-Module cmdlet .

Catatan

PowerShell menyertakan alias berikut untuk Install-Module:

  • Semua platform:
    • inmo

Install-Module berjalan pada rilis PowerShell 5.0 atau yang lebih baru, pada Windows 7 atau Windows 2008 R2 dan rilis Windows yang lebih baru.

Penting

Mulai April 2020, PowerShell Gallery tidak lagi mendukung Transport Layer Security (TLS) versi 1.0 dan 1.1. Jika Anda tidak menggunakan TLS 1.2 atau yang lebih tinggi, Anda akan menerima kesalahan saat mencoba mengakses Galeri PowerShell. Gunakan perintah berikut untuk memastikan Anda menggunakan TLS 1.2:

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

Untuk informasi selengkapnya, lihat pengumuman di blog PowerShell.

Sebagai praktik terbaik keamanan, evaluasi kode modul sebelum menjalankan cmdlet atau fungsi apa pun untuk pertama kalinya. Untuk mencegah modul yang berjalan yang berisi kode berbahaya, modul yang diinstal tidak diimpor secara otomatis setelah penginstalan.

Jika nama modul yang ditentukan oleh parameter Nama tidak ada di repositori, Install-Module mengembalikan kesalahan.

Untuk menginstal beberapa modul, gunakan parameter Nama dan tentukan array nama modul yang dipisahkan koma. Jika Anda menentukan beberapa nama modul, Anda tidak dapat menggunakan MinimumVersion, MaximumVersion, atau RequiredVersion. Find-Module membuat objek PSRepositoryItemInfo yang dapat dikirimkan alur ke Install-Module. Alur adalah cara lain untuk menentukan beberapa modul untuk diinstal dalam satu perintah.

Secara default, modul untuk cakupan AllUsers diinstal di $env:ProgramFiles\PowerShell\Modules. Default mencegah kebingungan saat Anda menginstal sumber daya PowerShell Desired State Configuration (DSC).

Penginstalan modul gagal dan tidak dapat diimpor jika tidak memiliki .psm1, , .psd1atau .dll dengan nama yang sama dalam folder. Gunakan parameter Paksa untuk menginstal modul.

Jika versi modul yang ada cocok dengan nama yang ditentukan oleh parameter Nama , dan parameter MinimumVersion atau RequiredVersion tidak digunakan, Install-Module diam-diam berlanjut tetapi tidak menginstal modul.

Jika versi modul yang ada lebih besar dari nilai parameter MinimumVersion , atau sama dengan nilai parameter RequiredVersion , Install-Module diam-diam berlanjut tetapi tidak menginstal modul.

Jika modul yang ada tidak cocok dengan nilai yang ditentukan oleh parameter MinimumVersion atau RequiredVersion , kesalahan terjadi dalam Install-Module perintah . Misalnya, jika versi modul yang diinstal yang ada lebih rendah dari nilai MinimumVersion atau tidak sama dengan nilai RequiredVersion .

Install-Module juga menginstal modul dependen apa pun yang ditentukan sebagaimana diperlukan oleh penerbit modul. Penerbit mencantumkan modul yang diperlukan dan versinya dalam manifes modul.