Megosztás a következőn keresztül:


Import-Module

Modulok hozzáadása az aktuális munkamenethez.

Syntax

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

A Import-Module parancsmag hozzáad egy vagy több modult az aktuális munkamenethez. A PowerShell 3.0-tól kezdve a rendszer automatikusan importálja a telepített modulokat a munkamenetbe, amikor a modul bármely parancsát vagy szolgáltatót használ. A modul importálásához azonban továbbra is használhatja a Import-Module parancsot. Az automatikus modulimportálást a $PSModuleAutoLoadingPreference beállításváltozóval tilthatja le. A $PSModuleAutoLoadingPreference változóval kapcsolatos további információkért lásd: about_Preference_Variables.

A modul olyan csomag, amely a PowerShellben használható tagokat tartalmazza. A tagok közé tartoznak a parancsmagok, a szolgáltatók, a szkriptek, a függvények, a változók és más eszközök és fájlok. A modul importálása után használhatja a modul tagjait a munkamenetben. A modulokkal kapcsolatos további információkért lásd: about_Modules.

Alapértelmezés szerint Import-Module importálja a modul által exportált összes tagot, de a Alias, Függvény, Parancsmagés Változó paraméterek használatával korlátozhatja, hogy mely tagokat importálja. A NoClobber paraméter megakadályozza, hogy Import-Module az aktuális munkamenet tagjaival azonos nevű tagokat importálja.

Import-Module csak az aktuális munkamenetbe importál egy modult. Ha minden új munkamenetbe importálni szeretné a modult, adjon hozzá egy Import-Module parancsot a PowerShell-profiljához. További információ a profilokról: about_Profiles.

A PowerShell-remotingot engedélyező távoli Windows-számítógépeket úgy kezelheti, hogy létrehoz egy PSSession a távoli számítógépen. Ezután a Import-Module paraméterével importálja a távoli számítógépre telepített modulokat. Amikor az importált parancsokat az aktuális munkamenetben használja, a parancsok implicit módon futnak a távoli számítógépen.

A Windows PowerShell 3.0-tól kezdve a Import-Module használatával importálhatja a Common Information Model (CIM) modulokat. A CIM-modulok parancsmagokat határoznak meg a parancsmagok definíciós XML-fájlokban (CDXML). Ez a funkció lehetővé teszi olyan parancsmagok használatát, amelyek nem felügyelt kódszerelvényekben vannak implementálva, például a C++-ban írt parancsmagok.

Azon távoli számítógépek esetében, amelyeken nincs engedélyezve a PowerShell-újraírás, beleértve a Windows operációs rendszert nem futtató számítógépeket is, a CimSession paraméterével importálhatja a Import-Module CIM-modulokat a távoli számítógépről. Az importált parancsok implicit módon futnak a távoli számítógépen. A CIMSession a távoli számítógépen található Windows Management Instrumentation (WMI) kapcsolat.

Példák

1. példa: Modul tagjainak importálása az aktuális munkamenetbe

Ez a példa importálja a PSDiagnostics modul tagjait az aktuális munkamenetbe.

Import-Module -Name PSDiagnostics

2. példa: A modul elérési útja által megadott összes modul importálása

Ez a példa az $Env:PSModulePath környezeti változó által megadott elérési úton található összes elérhető modult importálja az aktuális munkamenetbe.

Get-Module -ListAvailable | Import-Module

3. példa: Több modul tagjainak importálása az aktuális munkamenetbe

Ez a példa importálja a PSDiagnostics és Dism modulokat az aktuális munkamenetbe.

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

A Get-Module parancsmag lekéri a PSDiagnostics és Dism modulokat, és menti az objektumokat a $m változóban. A ListAvailable paraméterre akkor van szükség, ha a munkamenetbe még nem importált modulokat kap.

A Import-Module paramétere a modulok importálására szolgál az aktuális munkamenetbe.

4. példa: Az elérési út által megadott összes modul importálása

Ez a példa egy explicit elérési utat használ az importálni kívánt modul azonosításához.

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'.

A Részletes paraméter használatával Import-Module jelentést készít a folyamat előrehaladásáról, miközben betölti a modult. A Részletes, PassThruvagy AsCustomObject paraméter nélkül Import-Module nem hoz létre kimenetet a modul importálásakor.

5. példa: Munkamenetbe importált modultagok korlátozása

Ez a példa bemutatja, hogyan korlátozhatja, hogy mely modultagok legyenek importálva a munkamenetbe, és hogy a parancs milyen hatással van a munkamenetre. A függvény paraméter korlátozza a modulból importált tagokat. Az Alias, Változóés parancsmag paraméterekkel is korlátozhatja a modul által importált többi tagot.

A Get-Module parancsmag lekéri az PSDiagnostics modult képviselő objektumot. Az ExportedCmdlets tulajdonság felsorolja a modul által exportált összes parancsmagot, még akkor is, ha nem minden importált parancsmagot.

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

A parancsmag Get-Command paramétere az PSDiagnostics modulból importált parancsokat jeleníti meg. Az eredmények megerősítik, hogy csak a Disable-PSTrace és Enable-PSTrace parancsmagok lettek importálva.

6. példa: Egy modul tagjainak importálása és előtag hozzáadása

Ez a példa importálja a PSDiagnostics modult az aktuális munkamenetbe, hozzáad egy előtagot a tagnevekhez, majd megjeleníti az előtagneveket. A Import-Module paramétere hozzáadja a x előtagot a modulból importált összes taghoz. Az előtag csak az aktuális munkamenet tagjaira vonatkozik. Ez nem változtatja meg a modult. A PassThru paraméter egy modulobjektumot ad vissza, amely az importált modult jelöli.

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 lekéri a modulból importált tagokat. A kimenet azt mutatja, hogy a modultagok megfelelően lettek előtaggal elnevezettek.

7. példa: Egyéni objektum lekérése és használata

Ez a példa bemutatja, hogyan szerezheti be és használhatja a Import-Moduleáltal visszaadott egyéni objektumot.

Az egyéni objektumok olyan szintetikus tagokat tartalmaznak, amelyek az importált modultagokat képviselik. A modul parancsmagjai és függvényei például az egyéni objektum szkriptmetódusává alakulnak.

Az egyéni objektumok hasznosak a szkriptelésben. Akkor is hasznosak, ha több importált objektum neve azonos. Egy objektum szkriptmetódusának használata egyenértékű az importált tag teljes nevének megadásával, beleértve annak modulnevét is.

Az AsCustomObject paraméter csak szkriptmodul importálásakor használható. A Get-Module használatával meghatározhatja, hogy az elérhető modulok közül melyik szkriptmodul.

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"()

A Show-Calendar szkriptmodul az AsCustomObject paraméterrel importálva kér egy egyéni objektumot, a PassThru paraméter pedig az objektum visszaadásához. Az eredményül kapott egyéni objektumot a rendszer a $a változóba menti.

A $a változó a Get-Member parancsmagra van állítva a mentett objektum tulajdonságainak és metódusainak megjelenítéséhez. A kimenet egy Show-Calendar szkriptmetódust jelenít meg.

A Show-Calendar szkript metódus meghívásához a metódus nevét idézőjelek közé kell foglalni, mert a név kötőjelet tartalmaz.

8. példa: Modul importálása ugyanabba a munkamenetbe

Ez a példa bemutatja, hogyan használhatja a Import-Module paraméterét, amikor egy modult importál ugyanabba a munkamenetbe. A Force paraméter eltávolítja a betöltött modult, majd újra importálja.

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

Az első parancs importálja a PSDiagnostics modult. A második parancs ismét importálja a modult, ezúttal a előtag paraméter használatával.

A Force paraméter nélkül a munkamenet minden PSDiagnostics parancsmag két példányát tartalmazza, egyet a standard névvel, egyet pedig az előtaggal.

9. példa: Importált parancsok által elrejtett parancsok futtatása

Ez a példa bemutatja, hogyan futtathatók az importált parancsok által elrejtett parancsok. A TestModule modul tartalmaz egy Get-Date nevű függvényt, amely az év és a nap értékét adja vissza.

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

Az első Get-Date parancsmag egy DateTime objektumot ad vissza az aktuális dátummal. A TestModule modul importálása után Get-Date az év és a nap értékét adja vissza.

A Get-Command paramétere a munkamenet összes Get-Date parancsát jeleníti meg. Az eredmények azt mutatják, hogy két Get-Date parancs található a munkamenetben, egy függvény a TestModule modulból és egy parancsmag a Microsoft.PowerShell.Utility modulból.

Mivel a függvények elsőbbséget élveznek a parancsmagokkal szemben, a Get-Date modul függvénye fut a Get-Date parancsmag helyett. A Get-Dateeredeti verziójának futtatásához a parancs nevét a modul nevével kell minősíteni.

A powershell-parancsok elsőbbségéről további információt a about_Command_Precedencecímű témakörben talál.

10. példa: Modul minimális verziójának importálása

Ez a példa importálja a PowerShellGet modult. A Import-Module paraméterével csak a modul 2.0.0 vagy annál nagyobb verzióját importálja.

Import-Module -Name PowerShellGet -MinimumVersion 2.0.0

A RequiredVersion paraméterrel importálhat egy modul egy adott verzióját, vagy használhatja a Modul és verzióparamétereket a #Requires kulcsszóhoz, hogy egy adott modul egy adott verzióját megkövetelje egy szkriptben.

11. példa: Importálás teljes névvel

Ez a példa egy modul egy adott verzióját importálja a FullyQualifiedNamehasználatával.

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'}

12. példa: Importálás teljes elérési út használatával

Ez a példa egy modul egy adott verzióját importálja a teljes elérési út használatával.

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'

13. példa: Modul importálása távoli számítógépről

Ez a példa bemutatja, hogyan importálhat modult távoli számítógépről a Import-Module parancsmaggal. Ez a parancs a PowerShell Implicit Remoting funkcióját használja.

Amikor modulokat importál egy másik munkamenetből, az aktuális munkamenet parancsmagjait használhatja. A parancsmagokat használó parancsok azonban a távoli munkamenetben futnak.

$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 létrehoz egy távoli munkamenetet (PSSession) a Server01 számítógépre. A PSSession a $s változóba lesz mentve.

A Get-Module paraméterrel futó azt mutatja, hogy a NetSecurity modul telepítve van, és elérhető a távoli számítógépen. Ez a parancs egyenértékű a Invoke-Command parancsmag használatával Get-Module parancs távoli munkamenetben való futtatásához. Például:

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

Az Import-Module paraméterrel futó a NetSecurity modult importálja a távoli számítógépről az aktuális munkamenetbe. A Get-Command parancsmag lekéri a Get kezdődő és FirewallNetSecurity modulból származó parancsokat. A kimenet megerősíti, hogy a modul és parancsmagjai importálva lettek az aktuális munkamenetbe.

Ezután a Get-NetFirewallRule parancsmag lekéri a windowsos távfelügyeleti tűzfalszabályokat a Server01 számítógépen. Ez egyenértékű a Invoke-Command parancsmag használatával Get-NetFirewallRule távoli munkameneten való futtatásához.

14. példa: Tároló kezelése távoli számítógépen Windows operációs rendszer nélkül

Ebben a példában a számítógép rendszergazdája telepítette a Modulfelderítési WMI-szolgáltatót, amely lehetővé teszi a szolgáltató számára tervezett CIM-parancsok használatát.

A New-CimSession parancsmag létrehoz egy munkamenetet a RSDGF03 nevű távoli számítógépen. A munkamenet csatlakozik a WMI szolgáltatáshoz a távoli számítógépen. A CIM-munkamenetet a rendszer a $cs változóba menti. Import-Module a $cs használatával importálja a Storage CIM modult a RSDGF03 számítógépről.

A Get-Command parancsmag a Get-Disk modul parancsát jeleníti meg. Amikor importál egy CIM-modult a helyi munkamenetbe, a PowerShell az egyes parancsok CDXML-fájljait PowerShell-szkriptekké alakítja, amelyek függvényként jelennek meg a helyi munkamenetben.

Bár a Get-Disk be van állítva a helyi munkamenetbe, a parancsmag implicit módon azon a távoli számítógépen fut, ahonnan importálták. A parancs objektumokat ad vissza a távoli számítógépről a helyi munkamenetbe.

$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

Paraméterek

-Alias

Megadja azokat az aliasokat, amelyeket ez a parancsmag importál a modulból az aktuális munkamenetbe. Adja meg az aliasok vesszővel tagolt listáját. A helyettesítő karakterek használata engedélyezett.

Egyes modulok automatikusan exportálják a kijelölt aliasokat a munkamenetbe a modul importálásakor. Ez a paraméter lehetővé teszi, hogy válasszon az exportált aliasok közül.

Típus:String[]
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:True

-ArgumentList

Olyan argumentumokat vagy paraméterértékeket tartalmazó tömböt ad meg, amelyeket a szkriptmodul a Import-Module parancs során ad át. Ez a paraméter csak szkriptmodul importálásakor érvényes.

Az ArgumentList paraméterre is hivatkozhat az aliasa, args. Az ArgumentListviselkedésével kapcsolatos további információkért lásd: about_Splatting.

Típus:Object[]
Aliasok:Args
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-AsCustomObject

Azt jelzi, hogy ez a parancsmag egy egyéni objektumot ad vissza az importált modultagokat képviselő tagokkal. Ez a paraméter csak szkriptmodulokra érvényes.

Az AsCustomObject paraméter használatakor Import-Module importálja a modultagokat a munkamenetbe, majd egy PSCustomObject objektumot ad vissza PSModuleInfo objektum helyett. Az egyéni objektumot egy változóba mentheti, és taghozzáférés-számbavétel használatával hívhatja meg a tagokat.

Típus:SwitchParameter
Position:Named
Alapértelmezett érték:False
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-Assembly

Szerelvényobjektumok tömbjének megadása. Ez a parancsmag importálja a megadott szerelvényobjektumokban implementált parancsmagokat és szolgáltatókat. Adjon meg egy változót, amely szerelvényobjektumokat vagy szerelvényobjektumokat létrehozó parancsot tartalmaz. Szerelvényobjektumot is becsúszthat Import-Module.

Ha ezt a paramétert használja, a rendszer csak a megadott szerelvények által implementált parancsmagokat és szolgáltatókat importálja. Ha a modul más fájlokat is tartalmaz, azok nem lesznek importálva, és előfordulhat, hogy hiányoznak a modul fontos tagjai. Használja ezt a paramétert a modul hibakereséséhez és teszteléséhez, vagy ha a modul szerzője arra utasítja, hogy használja.

Típus:Assembly[]
Position:0
Alapértelmezett érték:None
Kötelező:True
Folyamatbemenet elfogadása:True
Helyettesítő karakterek elfogadása:False

-CimNamespace

A CIM-modulokat elérhetővé tevő alternatív CIM-szolgáltató névterét adja meg. Az alapértelmezett érték a Modulfelderítési WMI-szolgáltató névtere.

Ezzel a paraméterrel CIM-modulokat importálhat windowsos operációs rendszert nem futtató számítógépekről és eszközökről.

Ezt a paramétert a Windows PowerShell 3.0-ban vezettük be.

Típus:String
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-CimResourceUri

A CIM-modulok alternatív helyét adja meg. Az alapértelmezett érték a modulfelderítési WMI-szolgáltató erőforrás-URI-ja a távoli számítógépen.

Ezzel a paraméterrel CIM-modulokat importálhat windowsos operációs rendszert nem futtató számítógépekről és eszközökről.

Ezt a paramétert a Windows PowerShell 3.0-ban vezettük be.

Típus:Uri
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-CimSession

CiM-munkamenetet ad meg a távoli számítógépen. Adjon meg egy változót, amely tartalmazza a CIM-munkamenetet vagy a CIM-munkamenetet lekérő parancsot, például egy Get-CimSession parancsot.

Import-Module a CIM-munkamenet-kapcsolat használatával importálja a modulokat a távoli számítógépről az aktuális munkamenetbe. Ha az importált modulból származó parancsokat használja az aktuális munkamenetben, a parancsok a távoli számítógépen futnak.

Ez a paraméter modulokat importálhat a Windows operációs rendszert nem futtató számítógépekről és eszközökről, valamint a PowerShell-lel rendelkező Windows-számítógépekről, de nincs engedélyezve a PowerShell-remoting.

Ezt a paramétert a Windows PowerShell 3.0-ban vezettük be.

Típus:CimSession
Position:Named
Alapértelmezett érték:None
Kötelező:True
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-Cmdlet

A parancsmagok tömbjének megadása, amelyeket ez a parancsmag importál a modulból az aktuális munkamenetbe. A helyettesítő karakterek használata engedélyezett.

Egyes modulok automatikusan exportálják a kijelölt parancsmagokat a munkamenetbe a modul importálásakor. Ez a paraméter lehetővé teszi, hogy válasszon az exportált parancsmagok közül.

Típus:String[]
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:True

-DisableNameChecking

Azt jelzi, hogy ez a parancsmag letiltja azt az üzenetet, amely figyelmeztetést küld, amikor olyan parancsmagot vagy függvényt importál, amelynek neve nem jóváhagyott igét vagy tiltott karaktert tartalmaz.

Alapértelmezés szerint, amikor egy importált modul exportálja azokat a parancsmagokat vagy függvényeket, amelyek neve nem jóváhagyott igéket tartalmaz, a PowerShell a következő figyelmeztető üzenetet jeleníti meg:

FIGYELMEZTETÉS: Egyes importált parancsnevek nem jóváhagyott parancsokat tartalmaznak, amelyek kevésbé felderíthetők. A jóváhagyott igék listájának megtekintéséhez használja a Részletes paramétert, vagy írja be a Get-Verb.

Ez az üzenet csak figyelmeztetés. A teljes modul továbbra is importálva van, beleértve a nem megfelelő parancsokat is. Bár az üzenet megjelenik a modul felhasználói számára, az elnevezési problémát a modul szerzőjének kell kijavítani.

Típus:SwitchParameter
Position:Named
Alapértelmezett érték:False
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-Force

Ez a paraméter egy modul betöltését vagy újratöltését okozza az aktuális felett. Egyes modulok külső szerelvényeket töltnek be. Az importálás meghiúsul, ha olyan modult importál, amely betölti egy szerelvény újabb verzióját. A Force paraméter nem tudja felülbírálni a hibát. Az új verzió betöltéséhez új munkamenetet kell indítania.

Típus:SwitchParameter
Position:Named
Alapértelmezett érték:False
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-FullyQualifiedName

Az érték lehet egy modul neve, egy teljes modul specifikációja vagy egy modulfájl elérési útja.

Ha az érték egy elérési út, az elérési út teljes mértékben minősített vagy relatív lehet. A relatív elérési út feloldása a használandó utasítást tartalmazó szkripthez képest történik.

Ha az érték név vagy modulspecifikáció, a PowerShell megkeresi a megadott modul PSModulePath.

A modulspecifikáció egy kivonatoló, amely a következő kulcsokkal rendelkezik.

  • ModuleName - Kötelező A modul nevét adja meg.
  • GUID - Nem kötelező A modul GUID azonosítóját adja meg.
  • Emellett Kötelező megadni az alábbi három kulcs közül legalább egyet.
    • ModuleVersion – A modul minimálisan elfogadható verzióját adja meg.
    • MaximumVersion – A modul maximálisan elfogadható verzióját adja meg.
    • RequiredVersion – A modul pontos, kötelező verzióját adja meg. Ez nem használható a többi Verzió billentyűvel.
Típus:ModuleSpecification[]
Position:0
Alapértelmezett érték:None
Kötelező:True
Folyamatbemenet elfogadása:True
Helyettesítő karakterek elfogadása:False

-Function

Olyan függvénytömböt határoz meg, amelyet ez a parancsmag importál a modulból az aktuális munkamenetbe. A helyettesítő karakterek használata engedélyezett. Egyes modulok automatikusan exportálják a kiválasztott függvényeket a munkamenetbe a modul importálásakor. Ez a paraméter lehetővé teszi, hogy válasszon az exportált függvények közül.

Típus:String[]
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:True

-Global

Azt jelzi, hogy ez a parancsmag importálja a modulokat a globális munkamenet állapotába, hogy azok elérhetők legyenek a munkamenet összes parancsa számára.

Alapértelmezés szerint, ha Import-Module parancsmag a parancssorból, a szkriptfájlból vagy a szkriptblokkból van meghívva, a rendszer az összes parancsot a globális munkamenet állapotába importálja.

Egy másik modulból való meghíváskor Import-Module parancsmag importálja a modulban lévő parancsokat, beleértve a beágyazott modulokból származó parancsokat is, a hívómodul munkamenet-állapotába.

Borravaló

Ne hívjon Import-Module egy modulon belülről. Ehelyett deklarálja a célmodult beágyazott modulként a szülőmodul jegyzékében. A beágyazott modulok deklarálása javítja a függőségek felderíthetőségét.

A Globális paraméter egyenértékű a Hatókör paraméterrel, amelynek értéke globális.

A modul által exportált parancsok korlátozásához használjon egy Export-ModuleMember parancsot a szkriptmodulban.

Típus:SwitchParameter
Position:Named
Alapértelmezett érték:False
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-MaximumVersion

A maximális verziót adja meg. Ez a parancsmag csak a modul azon verzióját importálja, amely kisebb vagy egyenlő a megadott értéknél. Ha nincs megfelelő verzió, Import-Module hibát ad vissza.

Típus:String
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-MinimumVersion

A minimális verziót adja meg. Ez a parancsmag csak a modul azon verzióját importálja, amely nagyobb vagy egyenlő a megadott értéknél. Használja a MinimumVersion paraméter nevét vagy aliasát, Verzió. Ha nincs megfelelő verzió, Import-Module hibát generál.

A pontos verzió megadásához használja a RequiredVersion paramétert. A #Requires kulcsszó modul és Verzió paramétereit is használhatja a modul adott verziójának megköveteléséhez egy szkriptben.

Ezt a paramétert a Windows PowerShell 3.0-ban vezettük be.

Típus:Version
Aliasok:Version
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-ModuleInfo

Az importálandó modulobjektumok tömbjének megadása. Adjon meg egy változót, amely tartalmazza a modulobjektumokat, vagy egy olyan parancsot, amely lekéri a modulobjektumokat, például a következő parancsot: Get-Module -ListAvailable. A modulobjektumokat Import-Moduleis be lehet csövezni.

Típus:PSModuleInfo[]
Position:0
Alapértelmezett érték:None
Kötelező:True
Folyamatbemenet elfogadása:True
Helyettesítő karakterek elfogadása:False

-Name

Megadja az importálni kívánt modulok nevét. Adja meg a modul nevét vagy egy fájl nevét a modulban, például egy .psd1, .psm1, .dllvagy .ps1 fájlt. A fájl elérési útja nem kötelező. A helyettesítő karakterek nem engedélyezettek. A modulneveket és a fájlneveket a Import-Moduleis beszűkítheti.

Ha kihagy egy útvonalat, Import-Module megkeresi a modult a $Env:PSModulePath környezeti változóban mentett útvonalakban.

Lehetőség szerint csak a modul nevét adja meg. Fájlnév megadásakor csak az abban a fájlban implementált tagok lesznek importálva. Ha a modul más fájlokat is tartalmaz, azok nem lesznek importálva, és előfordulhat, hogy hiányoznak a modul fontos tagjai.

Jegyzet

Bár modulként importálható egy parancsfájl (.ps1) fájl, a szkriptfájlok általában nem olyan strukturáltak, mint a szkriptmodulok fájlja (.psm1) fájl. A szkriptfájlok importálása nem garantálja, hogy modulként használható. További információ: about_Modules.

Típus:String[]
Position:0
Alapértelmezett érték:None
Kötelező:True
Folyamatbemenet elfogadása:True
Helyettesítő karakterek elfogadása:True

-NoClobber

Megakadályozza az olyan parancsok importálását, amelyek neve megegyezik az aktuális munkamenetben meglévő parancsokkal. Alapértelmezés szerint Import-Module importálja az összes exportált modulparancsot.

Az azonos nevű parancsok elrejthetik vagy lecserélhetik a parancsokat a munkamenetben. A parancsok névütközésének elkerülése érdekében használja a Előtag vagy NoClobber paramétereket. A névütközésekről és a parancsok elsőbbségéről további információt a "Modulok és névütközések" című témakörben talál about_Modules és about_Command_Precedence.

Ezt a paramétert a Windows PowerShell 3.0-ban vezettük be.

Típus:SwitchParameter
Aliasok:NoOverwrite
Position:Named
Alapértelmezett érték:False
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-PassThru

Az importált modult képviselő objektumot ad vissza. Ez a parancsmag alapértelmezés szerint nem hoz létre kimenetet.

Típus:SwitchParameter
Position:Named
Alapértelmezett érték:False
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-Prefix

Megadja azt az előtagot, amelyet ez a parancsmag hozzáad a főnevekhez az importált modultagok nevében.

Ezzel a paraméterel elkerülheti azokat a névütközéseket, amelyek akkor fordulhatnak elő, ha a munkamenet különböző tagjai azonos nevűek. Ez a paraméter nem módosítja a modult, és nem befolyásolja azokat a fájlokat, amelyeket a modul saját használatra importál. Ezeket beágyazott moduloknak nevezzük. Ez a parancsmag csak az aktuális munkamenetben lévő tagok nevét érinti.

Ha például az UTC előtagot adja meg, majd importál egy Get-Date parancsmagot, a parancsmag a munkamenetben Get-UTCDatenéven ismert, és nem tévesztendő össze az eredeti Get-Date parancsmaggal.

A paraméter értéke elsőbbséget élvez a modul DefaultCommandPrefix tulajdonságával szemben, amely megadja az alapértelmezett előtagot.

Típus:String
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-PSSession

Megadja a Felhasználó által felügyelt PowerShell-munkamenetet (PSSession), amelyből a parancsmag modulokat importál az aktuális munkamenetbe. Adjon meg egy olyan változót, amely egy PSSession vagy egy PSSessionlekérő parancsot tartalmaz , például egy Get-PSSession parancsot.

Ha egy modult egy másik munkamenetből importál az aktuális munkamenetbe, az aktuális munkamenetben a modul parancsmagjait is használhatja, ugyanúgy, mint egy helyi modul parancsmagjait. A távoli parancsmagokat használó parancsok a távoli munkamenetben futnak, de az átnevezési adatokat a Háttérben kezeli a PowerShell.

Ez a paraméter a PowerShell Implicit Remoting funkcióját használja. Ez egyenértékű azzal, ha a Import-PSSession parancsmaggal importál bizonyos modulokat egy munkamenetből.

Import-Module nem lehet importálni az alapvető PowerShell-modulokat egy másik munkamenetből. Az alapvető PowerShell-modulok nevei a Microsoft.PowerShell-lel kezdődnek.

Ezt a paramétert a Windows PowerShell 3.0-ban vezettük be.

Típus:PSSession
Position:Named
Alapértelmezett érték:None
Kötelező:True
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-RequiredVersion

Megadja a modul azon verzióját, amelyet ez a parancsmag importál. Ha a verzió nincs telepítve, Import-Module hibát generál.

Alapértelmezés szerint Import-Module importálja a modult a verziószám ellenőrzése nélkül.

A minimális verzió megadásához használja a MinimumVersion paramétert. A #Requires kulcsszó modul és Verzió paramétereit is használhatja a modul adott verziójának megköveteléséhez egy szkriptben.

Ezt a paramétert a Windows PowerShell 3.0-ban vezettük be.

Azok a szkriptek, amelyek RequiredVersion használnak a Windows operációs rendszer meglévő kiadásainak részét képező modulok importálására, nem futnak automatikusan a Windows operációs rendszer későbbi kiadásaiban. Ennek az az oka, hogy a Windows operációs rendszer jövőbeli kiadásaiban a PowerShell-modul verziószámai magasabbak, mint a Windows operációs rendszer meglévő kiadásainak modulverziószámai.

Típus:Version
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-Scope

Megadja a modul importálási hatókörét.

A paraméter elfogadható értékei a következők:

  • globális. A munkamenet összes parancsa számára elérhető. Egyenértékű a globális paraméterével.
  • Helyi. Csak az aktuális hatókörben érhető el.

Alapértelmezés szerint, ha Import-Module parancsmag a parancssorból, a szkriptfájlból vagy a szkriptblokkból van meghívva, a rendszer az összes parancsot a globális munkamenet állapotába importálja. A -Scope Local paraméterrel modultartalmat importálhat a szkriptbe vagy a szkriptblokk hatókörébe.

Egy másik modulból való meghíváskor Import-Module parancsmag importálja a modulban lévő parancsokat, beleértve a beágyazott modulokból származó parancsokat is, a hívó munkamenet-állapotába. A -Scope Global vagy -Global megadása azt jelzi, hogy ez a parancsmag importálja a modulokat a globális munkamenet állapotába, hogy azok elérhetők legyenek a munkamenet összes parancsa számára.

A Globális paraméter egyenértékű a Hatókör paraméterrel, amelynek értéke globális.

Ezt a paramétert a Windows PowerShell 3.0-ban vezettük be.

Típus:String
Elfogadott értékek:Local, Global
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-SkipEditionCheck

Kihagyja az ellenőrzést a CompatiblePSEditions mezőben.

Lehetővé teszi egy modul betöltését a "$($Env:windir)\System32\WindowsPowerShell\v1.0\Modules" modul könyvtárából a PowerShell Core-ba, ha a modul nem ad meg Core a CompatiblePSEditions jegyzékmezőben.

Amikor egy modult egy másik elérési útról importál, ez a kapcsoló nem végez semmit, mivel az ellenőrzés nem történik meg. Linux és macOS rendszeren ez a kapcsoló nem tesz semmit.

További információ: about_PowerShell_Editions.

Figyelmeztetés

Import-Module -SkipEditionCheck valószínűleg még mindig nem sikerül importálni egy modult. Még ha sikerül is, a modul parancsainak meghívása később meghiúsulhat, amikor nem kompatibilis API-t próbál használni.

Típus:SwitchParameter
Position:Named
Alapértelmezett érték:False
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-UseWindowsPowerShell

Betölti a modult a Windows PowerShell kompatibilitási funkcióval. További információt a about_Windows_PowerShell_Compatibility talál.

Típus:SwitchParameter
Aliasok:UseWinPS
Position:Named
Alapértelmezett érték:False
Kötelező:True
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:False

-Variable

Olyan változók tömbje, amelyeket ez a parancsmag importál a modulból az aktuális munkamenetbe. Adja meg a változók listáját. A helyettesítő karakterek használata engedélyezett.

Egyes modulok automatikusan exportálják a kiválasztott változókat a munkamenetbe a modul importálásakor. Ez a paraméter lehetővé teszi, hogy válasszon az exportált változók közül.

Típus:String[]
Position:Named
Alapértelmezett érték:None
Kötelező:False
Folyamatbemenet elfogadása:False
Helyettesítő karakterek elfogadása:True

Bevitelek

String

Ehhez a parancsmaghoz csövezheti a modul nevét.

PSModuleInfo

Ehhez a parancsmaghoz modulobjektumot is csövezhet.

Assembly

A parancsmaghoz szerelvényobjektumot csövezhet.

Kimenetek

None

Ez a parancsmag alapértelmezés szerint nem ad vissza kimenetet.

PSModuleInfo

Ha megadja a PassThru paramétert, a parancsmag létrehoz egy System.Management.Automation.PSModuleInfo objektumot, amely az importált modult jelöli.

PSCustomObject

Ha együtt adja meg az AsCustomObject és PassThru paramétereket, a parancsmag létrehoz egy PSCustomObject objektumot, amely a modult jelöli.

Jegyzetek

A PowerShell a következő aliasokat tartalmazza Import-Module:

  • Minden platform:

    • ipmo
  • A modul importálása előtt a modulnak elérhetőnek kell lennie a helyi számítógép számára, és szerepelnie kell a PSModulePath környezeti változóban. További információ: about_Modules.

    A PSSession és CimSession paramétereket is használhatja a távoli számítógépekre telepített modulok importálásához. Az ezekben a modulokban található parancsmagokat használó parancsok azonban a távoli számítógépen futó távoli munkamenetben futnak.

  • Ha azonos nevű és azonos típusú tagokat importál a munkamenetbe, a PowerShell alapértelmezés szerint az utolsóként importált tagot használja. A változók és aliasok lecserélődnek, és az eredetiek nem érhetők el. A függvényeket, parancsmagokat és szolgáltatókat az új tagok csupán árnyékba szorítják. Ezek a parancsok úgy érhetők el, hogy a parancs nevét a beépülő modul, a modul vagy a függvény elérési útjának nevével minősítik.

  • A modulból importált parancsok formázási adatainak frissítéséhez használja a Update-FormatData parancsmagot. Ha egy modul formázási fájlja megváltozik, a Update-FormatData parancsmaggal frissítheti az importált parancsok formázási adatait. Nem kell újra importálnia a modult.

  • A Windows PowerShell 3.0-tól kezdve a PowerShell-lel telepített alapvető parancsok modulokba vannak csomagolva. A Windows PowerShell 2.0-ban és a PowerShell későbbi verzióiban régebbi stílusú munkameneteket létrehozó gazdagépprogramokban az alapvető parancsok beépülő modulokba vannak csomagolva (PSSnapins). A kivétel a Microsoft.PowerShell.Core , amely mindig beépülő modul. A távoli munkamenetek, például a New-PSSession parancsmag által indítottak is régebbi stílusú munkamenetek, amelyek alapvető beépülő modulokat tartalmaznak.

    A CreateDefault2 metódusról, amely alapmodulokkal hoz létre újabb stílusú munkameneteket, tekintse meg a CreateDefault2 metódus.

  • A Windows PowerShell 2.0-ban a modulobjektum egyes tulajdonságértékeit, például az ExportáltCmdlets és beágyazottmodulok tulajdonságértékeket nem tették ki a modul importálásáig.

  • Ha olyan vegyes módú szerelvényeket tartalmazó modult próbál importálni, amely nem kompatibilis a Windows PowerShell 3.0+-val, Import-Module az alábbihoz hasonló hibaüzenetet ad vissza.

    Import-Module: A vegyes módú szerelvény a futtatókörnyezet "v2.0.50727" verziójára épül, és további konfigurációs információk nélkül nem tölthető be a 4.0-s futtatókörnyezetbe.

    Ez a hiba akkor fordul elő, ha egy Windows PowerShell 2.0-hoz tervezett modul legalább egy vegyes modul szerelvényt tartalmaz. Vegyes modulból álló szerelvény, amely felügyelt és nem felügyelt kódot is tartalmaz, például C++ és C#.

    Vegyes módú szerelvényeket tartalmazó modul importálásához indítsa el a Windows PowerShell 2.0-t a következő paranccsal, majd próbálkozzon újra a Import-Module paranccsal.

    powershell.exe -Version 2.0

  • A CIM-munkamenet funkció használatához a távoli számítógépnek WS-Management újraírással és a Windows Management Instrumentation (WMI) szolgáltatással kell rendelkeznie, amely a Common Information Model (CIM) szabvány Microsoft-implementációja. A számítógépnek rendelkeznie kell a modulfelderítési WMI-szolgáltatóval vagy egy másik CIM-szolgáltatóval is, amely ugyanazokat az alapvető funkciókat tartalmazza.

    A CIM-munkamenet funkciót olyan számítógépeken is használhatja, amelyek nem Windows operációs rendszert futtatnak, és olyan Windows rendszerű számítógépeken, amelyek rendelkeznek PowerShell-lel, de nincs engedélyezve a PowerShell-újraírás.

    A CIM-paraméterekkel a CIM-modulokat olyan számítógépekről is lekérheti, amelyeken engedélyezve van a PowerShell-újraírás, beleértve a helyi számítógépet is. Amikor CIM-munkamenetet hoz létre a helyi számítógépen, a PowerShell a WMI helyett a DCOM-t használja a munkamenet létrehozásához.

  • Alapértelmezés szerint Import-Module importálja a modulokat a globális hatókörbe, még akkor is, ha egy leszármazott hatókörből hívják. A legfelső szintű hatókör és az összes leszármazott hatókör hozzáfér a modul exportált elemeihez.

    A leszármazói hatókörökben -Scope Local az importálást az adott hatókörre és annak összes leszármazott hatókörére korlátozza. A szülőhatókörök ezután nem látják az importált tagokat.

    Jegyzet

    Get-Module az aktuális munkamenetbe betöltött összes modult megjeleníti. Ide tartoznak a helyileg, leszármazott hatókörben betöltött modulok. A Get-Command -Module modulename használatával megtekintheti, hogy mely tagok töltődnek be az aktuális hatókörbe.

  • Import-Module nem tölt be osztály- és számbavételi definíciókat a modulba. Használja a szkript elején található using module utasítást. Ez importálja a modult, beleértve az osztály- és enumerálási definíciókat is. További információ: about_Using.

  • A szkriptmodul fejlesztése során gyakori, hogy módosítja a kódot, majd betölti a modul új verzióját a Import-Module a Force paraméterrel. Ez csak a gyökérmodul függvényeinek módosítására használható. Import-Module nem tölt be beágyazott modulokat. Emellett nem tölthetők be frissített osztályok vagy enumerálások.

    A beágyazott modulokban definiált modultagok frissítéséhez távolítsa el a modult a Remove-Module, majd importálja újra a modult.

    Ha a modul egy using utasítással lett betöltve, új munkamenetet kell indítania az osztályok és enumerálások frissített definícióinak importálásához. A PowerShellben definiált és using utasítással importált osztályok és enumerációk nem távolíthatók el.