Install-Module

Bir depodan bir veya daha fazla modül indirir ve bunları yerel bilgisayara yükler.

Sözdizimi

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>]

Description

Install-Module cmdlet'i, çevrimiçi bir depodan belirtilen ölçütleri karşılayan bir veya daha fazla modül alır. Cmdlet, arama sonuçlarının geçerli modüller olduğunu doğrular ve modül klasörlerini yükleme konumuna kopyalar. Yüklenen modüller yüklemeden sonra otomatik olarak içeri aktarılamaz. Belirtilen modüllerin en düşük, en yüksek ve tam sürümlerine göre hangi modülün yüklendiğini filtreleyebilirsiniz.

Bu, Microsoft.PowerShell.PSResourceGetiçindeki Get-InstalledPSResource cmdlet'i için bir proxy cmdlet'idir. Daha fazla bilgi için bkz. Install-PSResource.

Örnekler

Örnek 1: Modül bulma ve yükleme

Bu örnek, depoda bir modül bulur ve modülü yükler.

Find-Module -Name PowerShellGet | Install-Module

Find-Module, PowerShellGet modülünü belirtmek için Name parametresini kullanır. Varsayılan olarak, modülün en yeni sürümü depodan indirilir. Nesnesi, işlem hattı Install-Module cmdlet'ine gönderilir. Install-Module $env:ProgramFiles\PowerShell\Modulesiçindeki tüm kullanıcılar için modülü yükler.

Örnek 2: Ada göre bir modül yükleme

Bu örnekte, PowerShellGet modülünün en yeni sürümü yüklenir.

Install-Module -Name PowerShellGet

Install-Module, PowerShellGet modülünü belirtmek için Name parametresini kullanır. Varsayılan olarak, modülün en yeni sürümü depodan indirilir ve yüklenir.

Örnek 3: En düşük sürümünü kullanarak modül yükleme

Bu örnekte, PowerShellGet modülünün en düşük sürümü yüklenir. MinimumVersion parametresi, modülün yüklenmesi gereken en düşük sürümünü belirtir. Modülün daha yeni bir sürümü varsa, bu sürüm tüm kullanıcılar için indirilir ve yüklenir.

Install-Module -Name PowerShellGet -MinimumVersion 2.0.1

Install-Module, PowerShellGet modülünü belirtmek için Name parametresini kullanır. MinimumVersion parametresi, 2.0.1 sürümünün depodan indirildiğini ve yüklendiğini belirtir. sürüm 2.0.4 kullanılabilir olduğundan, bu sürüm tüm kullanıcılar için indirilir ve yüklenir.

Örnek 4: Modülün belirli bir sürümünü yükleme

Bu örnekte, PowerShellGet modülünün belirli bir sürümü yüklenir.

Install-Module -Name PowerShellGet -RequiredVersion 2.0.0

Install-Module, PowerShellGet modülünü belirtmek için Name parametresini kullanır. RequiredVersion parametresi, 2.0.0 sürümünün tüm kullanıcılar için indirilip yüklendiğini belirtir.

Örnek 5: Modülü yalnızca geçerli kullanıcı için yükleme

Bu örnek, modülün yalnızca geçerli kullanıcı için en yeni sürümünü indirir ve yükler.

Install-Module -Name PowerShellGet -Scope CurrentUser

Install-Module, PowerShellGet modülünü belirtmek için Name parametresini kullanır. Install-Module PowerShellGet'in en yeni sürümünü geçerli kullanıcının dizinine indirip $HOME\Documents\PowerShell\Modulesyükler.

Örnek 6: Modülün en son yayın öncesi sürümünü yükleme

Bu örnekte, bu sürüm yayın öncesi sürüm olduğunda modülün en son sürümünün nasıl yükleneceği gösterilmektedir. Yayın öncesi sürümü yüklemek için AllowPrerelease parametresi gerekir.

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

Bu yöntemi kullanarak en son sürümü elde edersiniz. En son sürüm bir ön sürüm değilse modülün en son kararlı sürümünü alırsınız.

Örnek 7: Modülün belirli bir yayın öncesi sürümünü yükleme

Bu örnekte, modülün belirli bir yayın öncesi sürümünün nasıl yükleneceği gösterilmektedir. Find-Module cmdlet'i, PowerShell Galerisi'nde modüllerin yayın öncesi sürümlerini bulmak için kullanılabilir.

Yayın öncesi sürümleri <version_number>-<prerelease_label>biçimindedir.

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

RequiredVersion parametresinin değeri için PowerShell Galerisi'nde gösterilen sürümü kullanın.

Parametreler

-AcceptLicense

Lisans gerektiren modüller için AcceptLicense yükleme sırasında lisans sözleşmesini otomatik olarak kabul eder. Daha fazla bilgi için bkz. lisans kabulü gerektiren modüller.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-AllowClobber

Bir bilgisayardaki mevcut komutlarla ilgili yükleme çakışmalarıyla ilgili uyarı iletilerini geçersiz kılar. Bir modül tarafından yüklenen komutlar ile aynı ada sahip mevcut komutların üzerine yazar. AllowClobber ve Force bir Install-Module komutunda birlikte kullanılabilir.

Proxy cmdlet'i bu parametrenin değerini Install-PSResource cmdlet'in NoClobber parametresine dönüştürür.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-AllowPrerelease

Yayın öncesi olarak işaretlenmiş bir modülü yüklemenize olanak tanır.

Proxy cmdlet'i bu parametreyi Install-PSResourcePrerelease parametresiyle eşler.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Confirm

Install-Module cmdlet'ini çalıştırmadan önce sizden onay ister.

Tür:SwitchParameter
Diğer adlar:cf
Position:Named
Default value:False
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Credential

Belirtilen paket sağlayıcısı veya kaynağı için modül yükleme haklarına sahip bir kullanıcı hesabı belirtir.

Tür:PSCredential
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-Force

proxy cmdlet'i, Install-PSResourcetarafından desteklenmediğinden bu parametreyi yoksayar.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-InputObject

İşlem hattı girişi için kullanılır. InputObjectdoğrudan bir değer sağlanırsa hata oluşur. InputObject parametresiyle nesneleri geçirmek için işlem hattını kullanın.

Tür:PSObject[]
Position:0
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-MaximumVersion

Proxy cmdlet'i, Install-PSResourceVersion parametresiyle kullanılacak bir NuGet sürüm arama dizesi oluşturmak için bu parametrenin değerini kullanır.

Tür:String
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-MinimumVersion

Proxy cmdlet'i, Install-PSResourceVersion parametresiyle kullanılacak bir NuGet sürüm arama dizesi oluşturmak için bu parametrenin değerini kullanır.

Tür:String
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-Name

Çevrimiçi galeriden yüklenecek modüllerin tam adlarını belirtir. Modül adlarının virgülle ayrılmış listesi kabul edilir. Modül adı, depodaki modül adıyla eşleşmelidir. Modül adlarının listesini almak için Find-Module kullanın.

Tür:String[]
Position:0
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-PassThru

PassThru parametresini kullanırken Install-Module modül için bir PSRepositoryItemInfo nesnesi oluşturur. Bu, Find-Module cmdlet'inden edindiğiniz bilgilerle aynıdır.

Tür:SwitchParameter
Position:Named
Default value:False
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Proxy

proxy cmdlet'i, Install-PSResourcetarafından desteklenmediğinden bu parametreyi yoksayar.

Tür:Uri
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-ProxyCredential

proxy cmdlet'i, Install-PSResourcetarafından desteklenmediğinden bu parametreyi yoksayar.

Tür:PSCredential
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-Repository

Modülün indirilip yükleneceği deponun adını belirtmek için Deposu parametresini kullanın. Birden çok depo kaydedildiğinde kullanılır. Install-Module komutunda kayıtlı bir deponun adını belirtir. Depo kaydetmek için Register-PSRepositorykullanın. Kayıtlı depoları görüntülemek için Get-PSRepositorykullanın.

Tür:String[]
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-RequiredVersion

Proxy cmdlet'i, Install-PSResourceVersion parametresiyle kullanılacak bir NuGet sürüm arama dizesi oluşturmak için bu parametrenin değerini kullanır.

Tür:String
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-Scope

Modülün yükleme kapsamını belirtir. Bu parametre için kabul edilebilir değerler AllUsers ve CurrentUser.

AllUsers kapsamı, modülleri bilgisayarın tüm kullanıcıları tarafından erişilebilen bir konuma yükler:

$env:ProgramFiles\PowerShell\Modules

CurrentUser modülleri yalnızca bilgisayarın geçerli kullanıcısı tarafından erişilebilen bir konuma yükler. Mesela:

$HOME\Documents\PowerShell\Modules

Kapsam tanımlanmadığında, varsayılan değer PowerShellGet sürümüne göre ayarlanır.

  • PowerShellGet 1.x sürümlerinde varsayılan değer, yükleme için yükseltme gerektiren AllUsers'dir.
  • PowerShell 6 veya sonraki sürümlerde PowerShellGet 2.0.0 ve üzeri sürümler için:
    • Varsayılan değer CurrentUser'dır ve yükleme için yükseltme gerektirmez.
    • Yükseltilmiş bir oturumda çalıştırıyorsanız varsayılan değer AllUsersolur.
Tür:String
Kabul edilen değerler:CurrentUser, AllUsers
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-SkipPublisherCheck

Proxy cmdlet'i, Install-PSResourceçağırmadan önce bu parametreyi AuthenticodeCheck dönüştürür.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-WhatIf

bir Install-Module komutu çalıştırıldığında ne olacağını gösterir. Cmdlet çalıştırılmıyor.

Tür:SwitchParameter
Diğer adlar:wi
Position:Named
Default value:False
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

Girişler

PSRepositoryItemInfo

Find-Module, Install-Moduleişlem hattına gönderilebilen PSRepositoryItemInfo nesneleri oluşturur.

String[]

PSObject[]

String

PSCredential

Uri

Çıkışlar

Microsoft.PowerShell.Commands.PSRepositoryItemInfo

PassThru parametresini kullanırken Install-Module modül için bir PSRepositoryItemInfo nesnesi oluşturur. Bu, Find-Module cmdlet'inden edindiğiniz bilgilerle aynıdır.

Notlar

PowerShell, Install-Moduleiçin aşağıdaki diğer adları içerir:

  • Tüm platformlar:
    • inmo

Install-Module, Windows 7 veya Windows 2008 R2 ve sonraki Windows sürümlerinde PowerShell 5.0 veya üzeri sürümlerde çalışır.

Önemli

Nisan 2020 itibarıyla PowerShell Galerisi artık Aktarım Katmanı Güvenliği (TLS) 1.0 ve 1.1 sürümlerini desteklememektedir. TLS 1.2 veya üzerini kullanmıyorsanız PowerShell Galerisi'ne erişmeye çalışırken hata alırsınız. TLS 1.2 kullandığınızdan emin olmak için aşağıdaki komutu kullanın:

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

Daha fazla bilgi için PowerShell blogunda duyuru bakın.

En iyi güvenlik uygulaması olarak, cmdlet'leri veya işlevleri ilk kez çalıştırmadan önce modülün kodunu değerlendirin. Kötü amaçlı kod içeren modüllerin çalıştırılmasını önlemek için, yüklenen modüller yüklemeden sonra otomatik olarak içeri aktarılamaz.

Adı parametresi tarafından belirtilen modül adı depoda yoksa Install-Module bir hata döndürür.

Birden çok modül yüklemek için Name parametresini kullanın ve virgülle ayrılmış bir modül adları dizisi belirtin. Birden çok modül adı belirtirseniz, MinimumVersion, MaximumVersionveya RequiredVersionkullanamazsınız. Find-Module, Install-Moduleişlem hattına gönderilebilen PSRepositoryItemInfo nesneleri oluşturur. İşlem hattı, tek bir komutta yüklenecek birden çok modül belirtmenin başka bir yoludur.

Varsayılan olarak, AllUsers kapsamına yönelik modüller $env:ProgramFiles\PowerShell\Modules'de yüklenir. PowerShell İstenen Durum Yapılandırması (DSC) kaynaklarını yüklediğinizde varsayılan ayar karışıklığı önler.

Klasör içinde aynı ada sahip bir .psm1, .psd1veya .dll yoksa modül yüklemesi başarısız olur ve içeri aktarılamaz. Modülü yüklemek için Zorla parametresini kullanın.

Mevcut modülün sürümü Name parametresi tarafından belirtilen adla eşleşiyorsa ve MinimumVersion veya RequiredVersion parametresi kullanılmıyorsa, Install-Module sessizce devam eder ancak modülü yüklemez.

Mevcut bir modülün sürümü MinimumVersion parametresinin değerinden büyükse veya RequiredVersion parametresinin değerine eşitse, Install-Module sessizce devam eder ancak modülü yüklemez.

Mevcut modül MinimumVersion veya RequiredVersion parametreleri tarafından belirtilen değerlerle eşleşmiyorsa, komutunda bir hata oluşur. Örneğin, mevcut yüklü modülün sürümü MinimumVersion değerinden düşükse veya RequiredVersion değerine eşit değilse.

Install-Module ayrıca modül yayımcısının gerektirdiği şekilde belirtilen bağımlı modülleri de yükler. Yayımcı gerekli modülleri ve bunların sürümlerini modül bildiriminde listeler.