Aracılığıyla paylaş


Import-Module

Geçerli oturuma modül ekler.

Sözdizimi

Import-Module
      [-Global]
      [-Prefix <String>]
      [-Name] <String[]>
      [-Function <String[]>]
      [-Cmdlet <String[]>]
      [-Variable <String[]>]
      [-Alias <String[]>]
      [-Force]
      [-SkipEditionCheck]
      [-PassThru]
      [-AsCustomObject]
      [-MinimumVersion <Version>]
      [-MaximumVersion <String>]
      [-RequiredVersion <Version>]
      [-ArgumentList <Object[]>]
      [-DisableNameChecking]
      [-NoClobber]
      [-Scope <String>] 
      [<CommonParameters>]
Import-Module
      [-Global]
      [-Prefix <String>]
      [-Name] <String[]>
      [-Function <String[]>]
      [-Cmdlet <String[]>]
      [-Variable <String[]>]
      [-Alias <String[]>]
      [-Force]
      [-SkipEditionCheck]
      [-PassThru]
      [-AsCustomObject]
      [-MinimumVersion <Version>]
      [-MaximumVersion <String>]
      [-RequiredVersion <Version>]
      [-ArgumentList <Object[]>]
      [-DisableNameChecking]
      [-NoClobber]
      [-Scope <String>]
      -PSSession <PSSession> 
      [<CommonParameters>]
Import-Module
      [-Global]
      [-Prefix <String>]
      [-Name] <String[]>
      [-Function <String[]>]
      [-Cmdlet <String[]>]
      [-Variable <String[]>]
      [-Alias <String[]>]
      [-Force]
      [-SkipEditionCheck]
      [-PassThru]
      [-AsCustomObject]
      [-MinimumVersion <Version>]
      [-MaximumVersion <String>]
      [-RequiredVersion <Version>]
      [-ArgumentList <Object[]>]
      [-DisableNameChecking]
      [-NoClobber]
      [-Scope <String>]
      -CimSession <CimSession>
      [-CimResourceUri <Uri>]
      [-CimNamespace <String>]
      [<CommonParameters>]
Import-Module
      [-Name] <string[]>
      -UseWindowsPowerShell
      [-Global]
      [-Prefix <string>]
      [-Function <string[]>]
      [-Cmdlet <string[]>]
      [-Variable <string[]>]
      [-Alias <string[]>]
      [-Force]
      [-PassThru]
      [-AsCustomObject]
      [-MinimumVersion <version>]
      [-MaximumVersion <string>]
      [-RequiredVersion <version>]
      [-ArgumentList <Object[]>]
      [-DisableNameChecking]
      [-NoClobber]
      [-Scope <string>]
      [<CommonParameters>]
Import-Module
      [-Global]
      [-Prefix <String>]
      [-FullyQualifiedName] <ModuleSpecification[]>
      [-Function <String[]>]
      [-Cmdlet <String[]>]
      [-Variable <String[]>]
      [-Alias <String[]>]
      [-Force]
      [-SkipEditionCheck]
      [-PassThru]
      [-AsCustomObject]
      [-ArgumentList <Object[]>]
      [-DisableNameChecking]
      [-NoClobber]
      [-Scope <String>] 
      [<CommonParameters>]
Import-Module
      [-Global]
      [-Prefix <String>]
      [-FullyQualifiedName] <ModuleSpecification[]>
      [-Function <String[]>]
      [-Cmdlet <String[]>]
      [-Variable <String[]>]
      [-Alias <String[]>]
      [-Force]
      [-SkipEditionCheck]
      [-PassThru]
      [-AsCustomObject]
      [-ArgumentList <Object[]>]
      [-DisableNameChecking]
      [-NoClobber]
      [-Scope <String>]
      -PSSession <PSSession> 
      [<CommonParameters>]
Import-Module
      [-FullyQualifiedName] <ModuleSpecification[]>
      -UseWindowsPowerShell
      [-Global]
      [-Prefix <string>]
      [-Function <string[]>]
      [-Cmdlet <string[]>]
      [-Variable <string[]>]
      [-Alias <string[]>]
      [-Force]
      [-PassThru]
      [-AsCustomObject]
      [-ArgumentList <Object[]>]
      [-DisableNameChecking]
      [-NoClobber]
      [-Scope <string>]
      [<CommonParameters>]
Import-Module
      [-Global]
      [-Prefix <String>]
      [-Assembly] <Assembly[]>
      [-Function <String[]>]
      [-Cmdlet <String[]>]
      [-Variable <String[]>]
      [-Alias <String[]>]
      [-Force]
      [-SkipEditionCheck]
      [-PassThru]
      [-AsCustomObject]
      [-ArgumentList <Object[]>]
      [-DisableNameChecking]
      [-NoClobber]
      [-Scope <String>] 
      [<CommonParameters>]
Import-Module
      [-Global]
      [-Prefix <String>]
      [-Function <String[]>]
      [-Cmdlet <String[]>]
      [-Variable <String[]>]
      [-Alias <String[]>]
      [-Force]
      [-SkipEditionCheck]
      [-PassThru]
      [-AsCustomObject]
      [-ModuleInfo] <PSModuleInfo[]>
      [-ArgumentList <Object[]>]
      [-DisableNameChecking]
      [-NoClobber]
      [-Scope <String>] 
      [<CommonParameters>]

Description

Import-Module cmdlet'i geçerli oturuma bir veya daha fazla modül ekler. PowerShell 3.0'dan başlayarak, modülde herhangi bir komut veya sağlayıcı kullandığınızda yüklü modüller otomatik olarak oturuma aktarılır. Ancak, modülü içeri aktarmak için Import-Module komutunu kullanmaya devam edebilirsiniz. $PSModuleAutoLoadingPreference tercih değişkenini kullanarak otomatik modül içeri aktarmayı devre dışı bırakabilirsiniz. $PSModuleAutoLoadingPreference değişkeni hakkında daha fazla bilgi için bkz. about_Preference_Variables.

Modül, PowerShell'de kullanılabilecek üyeleri içeren bir pakettir. Üyeler cmdlet'leri, sağlayıcıları, betikleri, işlevleri, değişkenleri ve diğer araçları ve dosyaları içerir. Bir modül içeri aktarıldıktan sonra, oturumunuzda modül üyelerini kullanabilirsiniz. Modüller hakkında daha fazla bilgi için bkz. about_Modules.

Varsayılan olarak, Import-Module modülün dışarı aktardığı tüm üyeleri içeri aktarır, ancak hangi üyelerin içeri aktarılacağını kısıtlamak için Diğer Ad, İşlev, Cmdletve Değişken parametrelerini kullanabilirsiniz. NoClobber parametresi, Import-Module geçerli oturumdaki üyelerle aynı adlara sahip üyeleri içeri aktarmasını engeller.

Import-Module bir modülü yalnızca geçerli oturuma aktarır. Modülü her yeni oturuma aktarmak için PowerShell profilinize bir Import-Module komutu ekleyin. Profiller hakkında daha fazla bilgi için bkz. about_Profiles.

Uzak bilgisayarda bir PSSession oluşturarak PowerShell uzaktan iletişiminin etkinleştirildiği uzak Windows bilgisayarlarını yönetebilirsiniz. Ardından uzak bilgisayarda yüklü modülleri içeri aktarmak için Import-Module parametresini kullanın. Geçerli oturumda içeri aktarılan komutları kullandığınızda, komutlar uzak bilgisayarda örtük olarak çalıştırılır.

Windows PowerShell 3.0'dan başlayarak Import-Module kullanarak Ortak Bilgi Modeli (CIM) modüllerini içeri aktarabilirsiniz. CIM modülleri Cmdlet Tanım XML (CDXML) dosyalarında cmdlet'leri tanımlar. Bu özellik, C++ dilinde yazılanlar gibi, yönetilmeyen kod derlemelerinde uygulanan cmdlet'leri kullanmanıza olanak tanır.

Windows işletim sistemini çalıştırmayan bilgisayarlar da dahil olmak üzere PowerShell uzaktan iletişimini etkinleştirmemiş uzak bilgisayarlar için, cim modüllerini uzak bilgisayardan içeri aktarmak için Import-Module parametresini kullanabilirsiniz. İçeri aktarılan komutlar uzak bilgisayarda örtük olarak çalışır. CIMSession, uzak bilgisayardaki Windows Yönetim Araçları'na (WMI) bağlantıdır.

Örnekler

Örnek 1: Modülün üyelerini geçerli oturuma aktarma

Bu örnek, PSDiagnostics modülünün üyelerini geçerli oturuma aktarır.

Import-Module -Name PSDiagnostics

Örnek 2: Modül yolu tarafından belirtilen tüm modülleri içeri aktarma

Bu örnek, $Env:PSModulePath ortam değişkeni tarafından belirtilen yolda bulunan tüm kullanılabilir modülleri geçerli oturuma aktarır.

Get-Module -ListAvailable | Import-Module

Örnek 3: Birkaç modülün üyelerini geçerli oturuma aktarma

Bu örnek, PSDiagnostics üyelerini içeri aktarır ve Dism modüllerini geçerli oturuma.

$m = Get-Module -ListAvailable PSDiagnostics, Dism
Import-Module -ModuleInfo $m

Get-Module cmdlet'i PSDiagnostics ve Dism modüllerini alır ve nesneleri $m değişkenine kaydeder. ListAvailable parametresi, henüz oturuma aktarılmayan modülleri alırken gereklidir.

modülleri geçerli oturuma aktarmak için Import-Module parametresi kullanılır.

Örnek 4: Bir yol tarafından belirtilen tüm modülleri içeri aktarma

Bu örnek, içeri aktaracak modülü tanımlamak için açık bir yol kullanır.

Import-Module -Name C:\ps-test\modules\test -Verbose

VERBOSE: Loading module from path 'C:\ps-test\modules\Test\Test.psm1'.
VERBOSE: Exporting function 'my-parm'.
VERBOSE: Exporting function 'Get-Parameter'.
VERBOSE: Exporting function 'Get-Specification'.
VERBOSE: Exporting function 'Get-SpecDetails'.

Ayrıntılı parametresinin kullanılması, modülü yüklerken Import-Module ilerleme durumunu bildirmesine neden olur. Ayrıntılı, PassThruveya AsCustomObject parametresi olmadan, Import-Module modülü içeri aktarırken herhangi bir çıkış oluşturmaz.

Örnek 5: Oturuma aktarılan modül üyelerini kısıtlama

Bu örnekte, hangi modül üyelerinin oturuma aktarılacağının nasıl kısıtlandığı ve bu komutun oturum üzerindeki etkisi gösterilmektedir. İşlevi parametresi modülden içeri aktarılan üyeleri sınırlar. Modülün içeri aktarabileceği diğer üyeleri kısıtlamak için Diğer Ad, Değişkenve Cmdlet parametrelerini de kullanabilirsiniz.

Get-Module cmdlet'i PSDiagnostics modülünü temsil eden nesneyi alır. ExportedCmdlets özelliği, hepsi içeri aktarılmasa bile modülün dışarı aktardığı tüm cmdlet'leri listeler.

Import-Module PSDiagnostics -Function Disable-PSTrace, Enable-PSTrace
(Get-Module PSDiagnostics).ExportedCommands

Key                          Value
---                          -----
Disable-PSTrace              Disable-PSTrace
Disable-PSWSManCombinedTrace Disable-PSWSManCombinedTrace
Disable-WSManTrace           Disable-WSManTrace
Enable-PSTrace               Enable-PSTrace
Enable-PSWSManCombinedTrace  Enable-PSWSManCombinedTrace
Enable-WSManTrace            Enable-WSManTrace
Get-LogProperties            Get-LogProperties
Set-LogProperties            Set-LogProperties
Start-Trace                  Start-Trace
Stop-Trace                   Stop-Trace

Get-Command -Module PSDiagnostics

CommandType     Name                 Version    Source
-----------     ----                 -------    ------
Function        Disable-PSTrace      6.1.0.0    PSDiagnostics
Function        Enable-PSTrace       6.1.0.0    PSDiagnostics

cmdlet'in Get-Command parametresi kullanıldığında, PSDiagnostics modülünden içeri aktarılan komutlar gösterilir. Sonuçlar yalnızca Disable-PSTrace ve Enable-PSTrace cmdlet'lerinin içeri aktarıldığını doğrular.

Örnek 6: Modülün üyelerini içeri aktarma ve ön ek ekleme

Bu örnek, PSDiagnostics modülünü geçerli oturuma aktarır, üye adlarına bir ön ek ekler ve ardından ön ekli üye adlarını görüntüler. Import-Module parametresi, modülden içeri aktarılan tüm üyelere x ön ekini ekler. Ön ek yalnızca geçerli oturumdaki üyeler için geçerlidir. Modülü değiştirmez. PassThru parametresi, içeri aktarılan modülü temsil eden bir modül nesnesi döndürür.

Import-Module PSDiagnostics -Prefix x -PassThru

ModuleType Version    Name               ExportedCommands
---------- -------    ----               ----------------
Script     6.1.0.0    PSDiagnostics      {Disable-xPSTrace, Disable-xPSWSManCombinedTrace, Disable-xW...

Get-Command -Module PSDiagnostics

CommandType     Name                                   Version    Source
-----------     ----                                   -------    ------
Function        Disable-xPSTrace                       6.1.0.0    PSDiagnostics
Function        Disable-xPSWSManCombinedTrace          6.1.0.0    PSDiagnostics
Function        Disable-xWSManTrace                    6.1.0.0    PSDiagnostics
Function        Enable-xPSTrace                        6.1.0.0    PSDiagnostics
Function        Enable-xPSWSManCombinedTrace           6.1.0.0    PSDiagnostics
Function        Enable-xWSManTrace                     6.1.0.0    PSDiagnostics
Function        Get-xLogProperties                     6.1.0.0    PSDiagnostics
Function        Set-xLogProperties                     6.1.0.0    PSDiagnostics
Function        Start-xTrace                           6.1.0.0    PSDiagnostics
Function        Stop-xTrace                            6.1.0.0    PSDiagnostics

Get-Command modülden içeri aktarılan üyeleri alır. Çıkış, modül üyelerinin doğru ön eke sahip olduğunu gösterir.

Örnek 7: Özel nesne alma ve kullanma

Bu örnekte, Import-Moduletarafından döndürülen özel nesnenin nasıl alınıp kullanılacağı gösterilmektedir.

Özel nesneler, içeri aktarılan modül üyelerinin her birini temsil eden yapay üyeler içerir. Örneğin, bir modüldeki cmdlet'ler ve işlevler özel nesnenin betik yöntemlerine dönüştürülür.

Özel nesneler betik oluşturmada kullanışlıdır. Ayrıca, içeri aktarılan birkaç nesne aynı adlara sahip olduğunda da kullanışlıdır. Bir nesnenin betik yöntemini kullanmak, modül adı da dahil olmak üzere içeri aktarılan bir üyenin tam adını belirtmekle eşdeğerdir.

AsCustomObject parametresi yalnızca bir betik modülü içeri aktarılırken kullanılabilir. Kullanılabilir modüllerden hangisinin betik modülü olduğunu belirlemek için Get-Module kullanın.

Get-Module -List | Format-Table -Property Name, ModuleType -AutoSize

Name          ModuleType
----          ----------
Show-Calendar     Script
BitsTransfer    Manifest
PSDiagnostics   Manifest
TestCmdlets       Script
...

$a = Import-Module -Name Show-Calendar -AsCustomObject -PassThru
$a | Get-Member

TypeName: System.Management.Automation.PSCustomObject
Name          MemberType   Definition
----          ----------   ----------
Equals        Method       bool Equals(System.Object obj)
GetHashCode   Method       int GetHashCode()
GetType       Method       type GetType()
ToString      Method       string ToString()
Show-Calendar ScriptMethod System.Object Show-Calendar();

$a."Show-Calendar"()

Show-Calendar betik modülü, özel bir nesne istemek için AsCustomObject parametresi ve nesneyi döndürmek için PassThru parametresi kullanılarak içeri aktarılır. Sonuçta elde edilen özel nesne $a değişkenine kaydedilir.

$a değişkeni, kaydedilen nesnenin özelliklerini ve yöntemlerini göstermek için Get-Member cmdlet'ine yöneltilir. Çıktıda bir Show-Calendar betik yöntemi gösterilir.

Show-Calendar betik yöntemini çağırmak için, ad kısa çizgi içerdiğinden yöntem adı tırnak içine alınmalıdır.

Örnek 8: Bir modülü aynı oturuma yeniden aktarma

Bu örnekte, bir modülü aynı oturuma yeniden aktarırken Import-Module parametresinin nasıl kullanılacağı gösterilmektedir. Force parametresi yüklenen modülü kaldırır ve yeniden içeri aktarır.

Import-Module PSDiagnostics
Import-Module PSDiagnostics -Force -Prefix PS

İlk komut PSDiagnostics modülünü içeri aktarır. İkinci komut bu kez Prefix parametresini kullanarak modülü yeniden içeri aktarır.

Force parametresi olmadan oturumda her PSDiagnostics cmdlet'inin biri standart adı, diğeri ön ekli adı olan iki kopyası bulunur.

Örnek 9: İçeri aktarılan komutlar tarafından gizlenmiş komutları çalıştırma

Bu örnekte, içeri aktarılan komutlar tarafından gizlenen komutların nasıl çalıştırıldığı gösterilmektedir. TestModule modülü, yılın yılını ve gününü döndüren Get-Date adlı bir işlev içerir.

Get-Date

Thursday, August 15, 2019 2:26:12 PM

Import-Module TestModule
Get-Date

19227

Get-Command Get-Date -All | Format-Table -Property CommandType, Name, ModuleName -AutoSize

CommandType     Name         ModuleName
-----------     ----         ----------
Function        Get-Date     TestModule
Cmdlet          Get-Date     Microsoft.PowerShell.Utility

Microsoft.PowerShell.Utility\Get-Date

Thursday, August 15, 2019 2:28:31 PM

İlk Get-Date cmdlet'i geçerli tarihe sahip bir DateTime nesnesi döndürür. TestModule modülünü içeri aktardıktan sonra Get-Date yılın yılını ve gününü döndürür.

Get-Command parametresi kullanılarak oturumdaki tüm Get-Date komutları gösterilir. Sonuçlar oturumda iki Get-Date komutu olduğunu gösterir: TestModule modülünden bir işlev ve Microsoft.PowerShell.Utility modülünden bir cmdlet.

İşlevler cmdlet'lerden öncelikli olduğundan, Get-Date cmdlet'i yerine TestModule modülündeki Get-Date işlevi çalıştırılır. Get-Dateözgün sürümünü çalıştırmak için komut adını modül adıyla nitelemeniz gerekir.

PowerShell'de komut önceliği hakkında daha fazla bilgi için bkz. about_Command_Precedence.

Örnek 10: Modülün en düşük sürümünü içeri aktarma

Bu örnek PowerShellGet modülünü içeri aktarır. Modülün yalnızca veya daha büyük bir sürümünü içeri aktarmak için Import-Module2.0.0 parametresini kullanır.

Import-Module -Name PowerShellGet -MinimumVersion 2.0.0

Ayrıca RequiredVersion parametresini kullanarak modülün belirli bir sürümünü içeri aktarabilir veya anahtar sözcüğün Modül ve #Requires parametrelerini kullanarak bir betikte modülün belirli bir sürümünü zorunlu kılabilirsiniz.

Örnek 11: Tam ad kullanarak içeri aktarma

Bu örnek, FullyQualifiedNamekullanarak modülün belirli bir sürümünü içeri aktarır.

PS> Get-Module -ListAvailable PowerShellGet | Select-Object Name, Version

Name          Version
----          -------
PowerShellGet 2.2.1
PowerShellGet 2.1.3
PowerShellGet 2.1.2
PowerShellGet 1.0.0.1

PS> Import-Module -FullyQualifiedName @{ModuleName = 'PowerShellGet'; ModuleVersion = '2.1.3'}

Örnek 12: Tam yol kullanarak içeri aktarma

Bu örnek, tam yolu kullanarak modülün belirli bir sürümünü içeri aktarır.

PS> Get-Module -ListAvailable PowerShellGet | Select-Object Path

Path
----
C:\Program Files\PowerShell\Modules\PowerShellGet\2.2.1\PowerShellGet.psd1
C:\Program Files\PowerShell\6\Modules\PowerShellGet\PowerShellGet.psd1
C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\2.1.2\PowerShellGet.psd1
C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\1.0.0.1\PowerShellGet.psd1

PS> Import-Module -Name 'C:\Program Files\PowerShell\Modules\PowerShellGet\2.2.1\PowerShellGet.psd1'

Örnek 13: Uzak bilgisayardan bir modülü içeri aktarma

Bu örnekte, uzak bir bilgisayardan bir modülü içeri aktarmak için Import-Module cmdlet'inin nasıl kullanılacağı gösterilmektedir. Bu komut PowerShell'in Örtük Uzaktan İletişim özelliğini kullanır.

Modülleri başka bir oturumdan içeri aktardığınızda, geçerli oturumdaki cmdlet'leri kullanabilirsiniz. Ancak, cmdlet'lerini kullanan komutlar uzak oturumda çalışır.

$s = New-PSSession -ComputerName Server01
Get-Module -PSSession $s -ListAvailable -Name NetSecurity

ModuleType Name             ExportedCommands
---------- ----             ----------------
Manifest   NetSecurity      {New-NetIPsecAuthProposal, New-NetIPsecMainModeCryptoProposal, New-Ne...

Import-Module -PSSession $s -Name NetSecurity
Get-Command -Module NetSecurity -Name Get-*Firewall*

CommandType     Name                                               ModuleName
-----------     ----                                               ----------
Function        Get-NetFirewallAddressFilter                       NetSecurity
Function        Get-NetFirewallApplicationFilter                   NetSecurity
Function        Get-NetFirewallInterfaceFilter                     NetSecurity
Function        Get-NetFirewallInterfaceTypeFilter                 NetSecurity
Function        Get-NetFirewallPortFilter                          NetSecurity
Function        Get-NetFirewallProfile                             NetSecurity
Function        Get-NetFirewallRule                                NetSecurity
Function        Get-NetFirewallSecurityFilter                      NetSecurity
Function        Get-NetFirewallServiceFilter                       NetSecurity
Function        Get-NetFirewallSetting                             NetSecurity

Get-NetFirewallRule -DisplayName "Windows Remote Management*" |
  Format-Table -Property DisplayName, Name -AutoSize

DisplayName                                              Name
-----------                                              ----
Windows Remote Management (HTTP-In)                      WINRM-HTTP-In-TCP
Windows Remote Management (HTTP-In)                      WINRM-HTTP-In-TCP-PUBLIC
Windows Remote Management - Compatibility Mode (HTTP-In) WINRM-HTTP-Compat-In-TCP

New-PSSession, bilgisayarda bir uzak oturum (PSSessionServer01oluşturur. PSSession$s değişkenine kaydedilir.

Get-Module parametresiyle çalıştırmak, NetSecurity modülünün uzak bilgisayarda yüklü ve kullanılabilir olduğunu gösterir. Bu komut, uzak oturumda Invoke-Command komutunu çalıştırmak için Get-Module cmdlet'ini kullanmaya eşdeğerdir. Mesela:

Invoke-Command $s {Get-Module -ListAvailable -Name NetSecurity

Import-Module parametresiyle çalıştırılırsa NetSecurity modülü uzak bilgisayardan geçerli oturuma aktarılır. Get-Command cmdlet'i Get ile başlayan komutları alır ve Firewall modülünden ekler. Çıkış, modülün ve cmdlet'lerinin geçerli oturuma aktarıldığını onaylar.

Ardından, Get-NetFirewallRule cmdlet'i Server01 bilgisayarda Windows Uzaktan Yönetim güvenlik duvarı kurallarını alır. Bu, uzak oturumda Invoke-Command çalıştırmak için Get-NetFirewallRule cmdlet'ini kullanmaya eşdeğerdir.

Örnek 14: Windows işletim sistemi olmadan uzak bir bilgisayarda depolamayı yönetme

Bu örnekte, bilgisayarın yöneticisi sağlayıcı için tasarlanmış CIM komutlarını kullanmanıza olanak tanıyan Modül Bulma WMI sağlayıcısını yüklemiştir.

New-CimSession cmdlet'i uzak bilgisayarda RSDGF03 adlı bir oturum oluşturur. Oturum, uzak bilgisayardaki WMI hizmetine bağlanır. CIM oturumu $cs değişkenine kaydedilir. Import-Module Depolama CIM modülünü $cs bilgisayardan içeri aktarmak için RSDGF03 kullanır.

Get-Command cmdlet'i Get-Disk modülündeki komutunu gösterir. Bir CIM modülünü yerel oturuma aktardığınızda, PowerShell her komut için CDXML dosyalarını yerel oturumda işlev olarak görünen PowerShell betiklerine dönüştürür.

yerel oturumda Get-Disk yazılsa da, cmdlet örtük olarak içeri aktarıldığı uzak bilgisayarda çalışır. Komut, uzak bilgisayardan yerel oturuma nesneleri döndürür.

$cs = New-CimSession -ComputerName RSDGF03
Import-Module -CimSession $cs -Name Storage
# Importing a CIM module, converts the CDXML files for each command into
# PowerShell scripts. These appear as functions in the local session.
Get-Command Get-Disk

CommandType     Name                  ModuleName
-----------     ----                  ----------
Function        Get-Disk              Storage

# Use implicit remoting to query disks on the remote computer from which the
# module was imported.
Get-Disk

Number Friendly Name           OperationalStatus  Total Size Partition Style
------ -------------           -----------------  ---------- ---------------
0      Virtual HD ATA Device   Online                  40 GB MBR

Parametreler

-Alias

Bu cmdlet'in modülden geçerli oturuma aktardığını diğer adları belirtir. Virgülle ayrılmış bir diğer ad listesi girin. Joker karakterlere izin verilir.

Bazı modüller, modülü içeri aktardığınızda seçili diğer adları otomatik olarak oturumunuza aktarır. Bu parametre, dışarı aktarılan diğer adlar arasından seçim yapmanızı sağlar.

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

-ArgumentList

Import-Module komutu sırasında bir betik modülüne geçirilen bağımsız değişken dizisini veya parametre değerlerini belirtir. Bu parametre yalnızca bir betik modülünü içeri aktarırken geçerlidir.

ArgumentList parametresine diğer adıyla da başvurabilirsiniz args. ArgumentListdavranışı hakkında daha fazla bilgi için bkz. about_Splatting.

Tür:Object[]
Diğer adlar:Args
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-AsCustomObject

Bu cmdlet'in içeri aktarılan modül üyelerini temsil eden üyeleri olan özel bir nesne döndürdüğünü gösterir. Bu parametre yalnızca betik modülleri için geçerlidir.

AsCustomObject parametresini kullandığınızda, Import-Module modül üyelerini oturuma aktarır ve ardından PSModuleInfo nesnesi yerine bir PSCustomObject nesnesi döndürür. Özel nesneyi bir değişkene kaydedebilir ve üyeleri çağırmak için üye erişim numaralandırmasını kullanabilirsiniz.

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

-Assembly

Derleme nesnelerinin bir dizisini belirtir. Bu cmdlet, belirtilen derleme nesnelerinde uygulanan cmdlet'leri ve sağlayıcıları içeri aktarır. Derleme nesnelerini içeren bir değişken veya derleme nesneleri oluşturan bir komut girin. Bir derleme nesnesini Import-Module'e de yöneltebilirsiniz.

Bu parametreyi kullandığınızda, yalnızca belirtilen derlemeler tarafından uygulanan cmdlet'ler ve sağlayıcılar içeri aktarılır. Modülde başka dosyalar varsa bunlar içeri aktarılmayabilir ve modülün önemli üyeleri eksik olabilir. Bu parametreyi modülde hata ayıklamak ve test etmek için veya modül yazarı tarafından kullanmanız istenirse kullanın.

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

-CimNamespace

CIM modüllerini kullanıma sunan alternatif bir CIM sağlayıcısının ad alanını belirtir. Varsayılan değer, Modül Bulma WMI sağlayıcısının ad alanıdır.

Windows işletim sistemi çalıştırmamış bilgisayarlardan ve cihazlardan CIM modüllerini içeri aktarmak için bu parametreyi kullanın.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

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

-CimResourceUri

CIM modülleri için alternatif bir konum belirtir. Varsayılan değer, uzak bilgisayardaki Modül Bulma WMI sağlayıcısının kaynak URI'sidir.

Windows işletim sistemi çalıştırmamış bilgisayarlardan ve cihazlardan CIM modüllerini içeri aktarmak için bu parametreyi kullanın.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

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

-CimSession

Uzak bilgisayarda bir CIM oturumu belirtir. CIM oturumunu içeren bir değişken veya Get-CimSession komutu gibi CIM oturumunu alan bir komut girin.

Import-Module, modülleri uzak bilgisayardan geçerli oturuma aktarmak için CIM oturum bağlantısını kullanır. Geçerli oturumda içeri aktarılan modüldeki komutları kullandığınızda, komutlar uzak bilgisayarda çalışır.

Bu parametreyi, Windows işletim sistemini çalıştırmayan bilgisayarlardan ve cihazlardan ve PowerShell'i olan ancak PowerShell uzaktan iletişim özelliği etkin olmayan Windows bilgisayarlardan modülleri içeri aktarmak için kullanabilirsiniz.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

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

-Cmdlet

Bu cmdlet'in modülden geçerli oturuma aktarıldığı bir cmdlet dizisi belirtir. Joker karakterlere izin verilir.

Bazı modüller, modülü içeri aktardığınızda seçili cmdlet'leri otomatik olarak oturumunuza aktarır. Bu parametre, dışarı aktarılan cmdlet'ler arasından seçim yapmanızı sağlar.

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

-DisableNameChecking

Bu cmdlet'in, adı onaylanmamış bir fiil veya yasaklanmış karakter içeren bir cmdlet'i veya işlevi içeri aktardığınızda sizi uyaran iletiyi gizlediğini gösterir.

Varsayılan olarak, içeri aktardığınız bir modül adlarında onaylanmamış fiiller bulunan cmdlet'leri veya işlevleri dışarı aktardığında PowerShell aşağıdaki uyarı iletisini görüntüler:

UYARI: İçeri aktarılan bazı komut adları, daha az bulunabilir hale getirebilecek onaylanmamış fiiller içerir. Onaylanan fiillerin listesini görmek için daha fazla ayrıntı veya tür Get-Verb için Verbose parametresini kullanın.

Bu ileti yalnızca bir uyarıdır. Uyumlu olmayan komutlar da dahil olmak üzere modülün tamamı yine içeri aktarılır. İleti modül kullanıcılarına görüntülense de, adlandırma sorunu modül yazarı tarafından düzeltilmelidir.

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

-Force

Bu parametre bir modülün geçerli modülün üzerine yüklenmesine veya yeniden yüklenmesine neden olur. Bazı modüller dış derlemeleri yükler. Derlemenin daha yeni bir sürümünü yükleyen bir modülü içeri aktarıyorsanız içeri aktarma işlemi başarısız olur. Zorla parametresi hatayı geçersiz kılamaz. Yeni sürümü yüklemek için yeni bir oturum başlatmanız gerekir.

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

-FullyQualifiedName

Değer bir modül adı, tam modül belirtimi veya modül dosyasının yolu olabilir.

Değer bir yol olduğunda, yol tam veya göreli olabilir. Göreli yol, using deyimini içeren betike göre çözümlenir.

Değer bir ad veya modül belirtimi olduğunda PowerShell, belirtilen modülü psmodulepath arar.

Modül belirtimi, aşağıdaki anahtarlara sahip bir karma tablodur.

  • ModuleName - Gerekli Modül adını belirtir.
  • GUID - İsteğe bağlı Modülün GUID değerini belirtir.
  • Ayrıca aşağıdaki üç anahtardan en az birini belirtmek için Gerekli .
    • ModuleVersion - Modülün kabul edilebilir en düşük sürümünü belirtir.
    • MaximumVersion - Modülün kabul edilebilir en yüksek sürümünü belirtir.
    • RequiredVersion - Modülün tam ve gerekli bir sürümünü belirtir. Bu, diğer Sürüm anahtarlarıyla kullanılamaz.
Tür:ModuleSpecification[]
Position:0
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-Function

Bu cmdlet'in modülden geçerli oturuma aktarıldığı bir işlev dizisini belirtir. Joker karakterlere izin verilir. Bazı modüller, modülü içeri aktardığınızda seçili işlevleri otomatik olarak oturumunuza aktarır. Bu parametre, dışarı aktarılan işlevler arasından seçim yapmanızı sağlar.

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

-Global

Bu cmdlet'in modülleri genel oturum durumuna aktardığını ve böylece oturumdaki tüm komutlar tarafından kullanılabildiklerini gösterir.

Varsayılan olarak, komut isteminden, betik dosyasından veya betik bloğundan Import-Module cmdlet çağrıldığında, tüm komutlar genel oturum durumuna aktarılır.

Başka bir modülden çağrıldığında, Import-Module cmdlet iç içe modüllerdeki komutlar da dahil olmak üzere modüldeki komutları çağıran modülün oturum durumuna aktarır.

Bahşiş

Modülün içinden Import-Module çağırmaktan kaçınmanız gerekir. Bunun yerine, hedef modülü üst modülün bildiriminde iç içe yerleştirilmiş bir modül olarak bildirin. İç içe modüllerin bildirilmesi, bağımlılıkların bulunabilirliğini artırır.

Genel parametresi, Geneldeğeriyle Kapsamı parametresine eşdeğerdir.

Bir modülün dışarı aktardığını komutları kısıtlamak için betik modülünde bir Export-ModuleMember komutu kullanın.

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

-MaximumVersion

En yüksek sürümü belirtir. Bu cmdlet, modülün yalnızca belirtilen değerden küçük veya buna eşit bir sürümünü içeri aktarır. Hiçbir sürüm uygun değilse, Import-Module bir hata döndürür.

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

-MinimumVersion

En düşük sürümü belirtir. Bu cmdlet, modülün yalnızca belirtilen değerden büyük veya buna eşit bir sürümünü içeri aktarır. MinimumVersion parametre adını veya diğer adını Sürümkullanın. Hiçbir sürüm uygun değilse, Import-Module bir hata oluşturur.

Tam bir sürüm belirtmek için RequiredVersion parametresini kullanın. Betikte modülün belirli bir sürümünü gerektirmek için #Requires anahtar sözcüğün Modül ve Sürüm parametrelerini de kullanabilirsiniz.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

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

-ModuleInfo

İçeri aktaracak modül nesneleri dizisini belirtir. Modül nesnelerini içeren bir değişken veya aşağıdaki komut gibi modül nesnelerini alan bir komut girin: Get-Module -ListAvailable. Modül nesnelerini Import-Modulede aktarabilirsiniz.

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

-Name

İçeri aktaracak modüllerin adlarını belirtir. Modülün adını veya .psd1, .psm1, .dllveya .ps1 dosyası gibi bir dosyanın adını girin. Dosya yolları isteğe bağlıdır. Joker karakterlere izin verilmez. Modül adlarını ve dosya adlarını Import-Modulede aktarabilirsiniz.

Bir yolu atlarsanız, Import-Module$Env:PSModulePath ortam değişkenine kaydedilen yollarda modülü arar.

Mümkün olduğunda yalnızca modül adını belirtin. Bir dosya adı belirttiğinizde, yalnızca bu dosyada uygulanan üyeler içeri aktarılır. Modülde başka dosyalar varsa bunlar içeri aktarılmayabilir ve modülün önemli üyeleri eksik olabilir.

Not

Betik (.ps1) dosyasını modül olarak içeri aktarmak mümkün olsa da, betik dosyaları genellikle betik modülleri dosyası (.psm1) dosyası gibi yapılandırılmaz. Betik dosyasını içeri aktarmak, bunun modül olarak kullanılabilir olduğunu garanti etmez. Daha fazla bilgi için bkz. about_Modules.

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

-NoClobber

Geçerli oturumdaki mevcut komutlar ile aynı adlara sahip komutların içeri aktarılmasını engeller. Varsayılan olarak, Import-Module dışarı aktarılan tüm modül komutlarını içeri aktarır.

Aynı adlara sahip komutlar oturumdaki komutları gizleyebilir veya değiştirebilir. Bir oturumda komut adı çakışmalarını önlemek için Öneki kullanın veya NoClobber parametrelerini. Ad çakışmaları ve komut önceliği hakkında daha fazla bilgi için, about_Modules ve about_Command_Precedenceiçindeki "Modüller ve Ad Çakışmaları" bölümüne bakın.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

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

-PassThru

İçeri aktarılan modülü temsil eden bir nesne döndürür. Varsayılan olarak, bu cmdlet herhangi bir çıkış oluşturmaz.

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

-Prefix

Bu cmdlet'in içeri aktarılan modül üyelerinin adlarındaki adlara eklediği bir ön ek belirtir.

Oturumdaki farklı üyeler aynı ada sahip olduğunda oluşabilecek ad çakışmalarını önlemek için bu parametreyi kullanın. Bu parametre modülü değiştirmez ve modülün kendi kullanımı için içeri aktardığı dosyaları etkilemez. Bunlar iç içe modüller olarak bilinir. Bu cmdlet yalnızca geçerli oturumdaki üyelerin adlarını etkiler.

Örneğin, UTC ön ekini belirtir ve sonra bir Get-Date cmdlet'ini içeri aktarırsanız, cmdlet oturumda Get-UTCDateolarak bilinir ve özgün Get-Date cmdlet'iyle karıştırılmaz.

Bu parametrenin değeri, modülün varsayılan ön ekini belirten DefaultCommandPrefix özelliğinden önceliklidir.

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

-PSSession

Bu cmdlet'in modülleri geçerli oturuma aktardığı PowerShell kullanıcı tarafından yönetilen bir oturumu (PSSession) belirtir. PSSession içeren bir değişken veya komutu gibi Get-PSSessionalan bir komut girin.

Bir modülü farklı bir oturumdan geçerli oturuma aktardığınızda, yerel modüldeki cmdlet'leri kullandığınız gibi geçerli oturumdaki modüldeki cmdlet'leri de kullanabilirsiniz. Uzak cmdlet'leri kullanan komutlar uzak oturumda çalışır, ancak uzaktan iletişim ayrıntıları PowerShell tarafından arka planda yönetilir.

Bu parametre PowerShell'in Örtük Uzaktan İletişim özelliğini kullanır. Bir oturumdan belirli modülleri içeri aktarmak için Import-PSSession cmdlet'ini kullanmakla eşdeğerdir.

Import-Module çekirdek PowerShell modüllerini başka bir oturumdan içeri aktaramaz. Temel PowerShell modüllerinde Microsoft.PowerShell ile başlayan adlar vardır.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

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

-RequiredVersion

Bu cmdlet'in içeri aktarıldığı modülün bir sürümünü belirtir. Sürüm yüklü değilse Import-Module bir hata oluşturur.

Varsayılan olarak, Import-Module sürüm numarasını denetlemeden modülü içeri aktarır.

En düşük sürümü belirtmek için MinimumVersion parametresini kullanın. Betikte modülün belirli bir sürümünü gerektirmek için #Requires anahtar sözcüğün Modül ve Sürüm parametrelerini de kullanabilirsiniz.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Windows işletim sisteminin mevcut sürümlerine dahil edilen modülleri içeri aktarmak için RequiredVersion kullanan betikler, Windows işletim sisteminin gelecek sürümlerinde otomatik olarak çalışmaz. Bunun nedeni, Windows işletim sisteminin gelecek sürümlerindeki PowerShell modülü sürüm numaralarının Windows işletim sisteminin mevcut sürümlerindeki modül sürüm numaralarından daha yüksek olmasıdır.

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

-Scope

Modülün içeri aktarılacağını bir kapsam belirtir.

Bu parametre için kabul edilebilir değerler şunlardır:

  • genel . Oturumdaki tüm komutlar tarafından kullanılabilir. Genel parametresine eşdeğerdir.
  • yerel . Yalnızca geçerli kapsamda kullanılabilir.

Varsayılan olarak, komut isteminden, betik dosyasından veya betik bloğundan Import-Module cmdlet çağrıldığında, tüm komutlar genel oturum durumuna aktarılır. modül içeriğini betik veya betik engelleme kapsamına aktarmak için -Scope Local parametresini kullanabilirsiniz.

Başka bir modülden çağrıldığında, Import-Module cmdlet iç içe modüllerdeki komutlar da dahil olmak üzere modüldeki komutları çağıranın oturum durumuna aktarır. -Scope Global veya -Global belirtilmesi, bu cmdlet'in modülleri genel oturum durumuna aktardığını ve böylece oturumdaki tüm komutlar tarafından kullanılabildiklerini gösterir.

Genel parametresi, Geneldeğeriyle Kapsamı parametresine eşdeğerdir.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:String
Kabul edilen değerler:Local, Global
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-SkipEditionCheck

CompatiblePSEditions alanındaki denetimi atlar.

Bu modül "$($Env:windir)\System32\WindowsPowerShell\v1.0\Modules" bildirim alanında Core belirtmediğinde modülün CompatiblePSEditions modül dizininden PowerShell Core'a yüklenmesine izin verir.

Bir modülü başka bir yoldan içeri aktarırken, denetim gerçekleştirildiğinden bu anahtar hiçbir şey yapmaz. Linux ve macOS'ta bu anahtar hiçbir şey yapmaz.

Daha fazla bilgi için bkz. about_PowerShell_Editions.

Uyarı

Import-Module -SkipEditionCheck hala bir modülü içeri aktaramaz. Başarılı olsa bile, uyumsuz bir API kullanmaya çalıştığında modülden bir komutu çağırma işlemi başarısız olabilir.

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

-UseWindowsPowerShell

Windows PowerShell Uyumluluğu işlevselliğini kullanarak modülü yükler. Daha fazla bilgi için bkz. about_Windows_PowerShell_Compatibility.

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

-Variable

Bu cmdlet'in modülden geçerli oturuma aktardığını bir değişken dizisi belirtir. Değişkenlerin listesini girin. Joker karakterlere izin verilir.

Bazı modüller, modülü içeri aktardığınızda seçili değişkenleri otomatik olarak oturumunuza aktarır. Bu parametre, dışarı aktarılan değişkenler arasından seçim yapmanızı sağlar.

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

Girişler

String

Modül adını bu cmdlet'e aktarabilirsiniz.

PSModuleInfo

Bir modül nesnesini bu cmdlet'e aktarabilirsiniz.

Assembly

Bir derleme nesnesini bu cmdlet'e yöneltebilirsiniz.

Çıkışlar

None

Varsayılan olarak, bu cmdlet çıkış döndürmez.

PSModuleInfo

PassThru parametresini belirtirseniz, cmdlet içeri aktarılan modülü temsil eden bir System.Management.Automation.PSModuleInfo nesnesi oluşturur.

PSCustomObject

AsCustomObject ve PassThru parametrelerini birlikte belirtirseniz, cmdlet modülü temsil eden bir PSCustomObject nesnesi oluşturur.

Notlar

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

  • Tüm platformlar:

    • ipmo
  • Modülü içeri aktarabilmeniz için önce modülün yerel bilgisayarınız tarafından erişilebilir olması ve PSModulePath ortam değişkenine dahil edilmesi gerekir. Daha fazla bilgi için bkz. about_Modules.

    Uzak bilgisayarlarda yüklü modülleri içeri aktarmak için PSSession ve CimSession parametrelerini de kullanabilirsiniz. Ancak, bu modüllerdeki cmdlet'leri kullanan komutlar uzak bilgisayardaki uzak oturumda çalıştırılır.

  • Oturumunuza aynı ada ve aynı türe sahip üyeleri içeri aktarırsanız, PowerShell varsayılan olarak en son içeri aktarılan üyeyi kullanır. Değişkenler ve diğer adlar değiştirilir ve özgün öğelere erişilemez. İşlevler, cmdlet'ler ve sağlayıcılar yalnızca yeni üyeler tarafından gölgelenir. Bunlara, komut adı ek bileşeni, modül veya işlev yolu adıyla nitelenerek erişilebilir.

  • Bir modülden içeri aktarılan komutların biçimlendirme verilerini güncelleştirmek için Update-FormatData cmdlet'ini kullanın. Modülün biçimlendirme dosyası değişirse, içeri aktarılan komutların biçimlendirme verilerini güncelleştirmek için Update-FormatData cmdlet'ini kullanın. Modülü yeniden içeri aktarmanız gerekmez.

  • Windows PowerShell 3.0'dan başlayarak, PowerShell ile yüklenen temel komutlar modüller halinde paketlenir. Windows PowerShell 2.0'da ve PowerShell'in sonraki sürümlerinde eski stilde oturumlar oluşturan konak programlarında, temel komutlar ek bileşenler halinde paketlenir (PSSnapins). Özel durum, her zaman ek bileşen olan Microsoft.PowerShell.Core . Ayrıca, New-PSSession cmdlet'i tarafından başlatılanlar gibi uzak oturumlar, çekirdek ek bileşenleri içeren eski stildeki oturumlardır.

    Temel modüllerle daha yeni stil oturumları oluşturan CreateDefault2 yöntemi hakkında bilgi için bkz. CreateDefault2 Yöntemi.

  • Windows PowerShell 2.0'da modül nesnesinin ExportedCmdlets ve NestedModules özellik değerleri gibi bazı özellik değerleri modül içeri aktarılana kadar doldurulmadı.

  • Windows PowerShell 3.0+ ile uyumlu olmayan karma mod derlemeleri içeren bir modülü içeri aktarmaya çalışırsanız Import-Module aşağıdakine benzer bir hata iletisi döndürür.

    Import-Module: Karma mod derlemesi çalışma zamanının 'v2.0.50727' sürümüne göre oluşturulur ve ek yapılandırma bilgileri olmadan 4.0 çalışma zamanına yüklenemez.

    Bu hata, Windows PowerShell 2.0 için tasarlanmış bir modül en az bir karma modül derlemesi içerdiğinde oluşur. C++ ve C# gibi hem yönetilen hem de yönetilmeyen kodu içeren karma modül derlemesi.

    Karma mod derlemeleri içeren bir modülü içeri aktarmak için aşağıdaki komutu kullanarak Windows PowerShell 2.0'ı başlatın ve Import-Module komutunu yeniden deneyin.

    powershell.exe -Version 2.0

  • CIM oturum özelliğini kullanmak için uzak bilgisayarda WS-Management uzaktan iletişim ve Ortak Bilgi Modeli (CIM) standardının Microsoft uygulaması olan Windows Yönetim Araçları (WMI) olmalıdır. Bilgisayarda ayrıca Modül Bulma WMI sağlayıcısı veya aynı temel özelliklere sahip alternatif bir CIM sağlayıcısı olmalıdır.

    CIM oturum özelliğini Windows işletim sistemi çalıştırmayan bilgisayarlarda ve PowerShell'i olan ancak PowerShell uzaktan iletişiminin etkin olmadığı Windows bilgisayarlarda kullanabilirsiniz.

    CiM parametrelerini, yerel bilgisayar da dahil olmak üzere PowerShell uzaktan iletişiminin etkinleştirildiği bilgisayarlardan CIM modüllerini almak için de kullanabilirsiniz. Yerel bilgisayarda cim oturumu oluşturduğunuzda PowerShell oturumu oluşturmak için WMI yerine DCOM kullanır.

  • Varsayılan olarak, Import-Module alt kapsamdan çağrıldığında bile modülleri genel kapsamda içeri aktarır. En üst düzey kapsam ve tüm alt kapsamlar modülün dışarı aktarılan öğelerine erişebilir.

    Alt kapsamda, -Scope Local içeri aktarmayı bu kapsama ve tüm alt kapsamlarına sınırlar. Ardından üst kapsamlar içeri aktarılan üyeleri görmez.

    Not

    Get-Module geçerli oturumda yüklenen tüm modülleri gösterir. Buna, alt kapsamda yerel olarak yüklenen modüller dahildir. Geçerli kapsamda hangi üyelerin yüklendiğini görmek için Get-Command -Module modulename kullanın.

  • Import-Module modülde sınıf ve numaralandırma tanımlarını yüklemez. Betiğinizin başındaki using module deyimini kullanın. Bu, sınıfı ve numaralandırma tanımları dahil olmak üzere modülü içeri aktarır. Daha fazla bilgi için bkz. about_Using.

  • Bir betik modülünün geliştirilmesi sırasında kodda değişiklik yapmak ve ardından Import-Module parametresiyle kullanarak modülün yeni sürümünü yüklemek yaygın bir işlemdir. Bu, yalnızca kök modüldeki işlevlerde yapılan değişiklikler için çalışır. Import-Module iç içe modülleri yeniden yüklemez. Ayrıca, güncelleştirilmiş sınıfları veya numaralandırmaları yüklemenin hiçbir yolu yoktur.

    İç içe modüllerde tanımlanan güncelleştirilmiş modül üyelerini almak için modülü Remove-Moduleile kaldırın ve modülü yeniden içeri aktarın.

    Modül bir using deyimiyle yüklendiyse, sınıflar ve numaralandırmalar için güncelleştirilmiş tanımları içeri aktarmak için yeni bir oturum başlatmanız gerekir. PowerShell'de tanımlanan ve using deyimiyle içeri aktarılan sınıflar ve numaralandırmalar kaldırılamaz.