Import-Module
Přidá moduly do aktuální relace.
Syntaxe
Import-Module
[-Global]
[-Prefix <String>]
[-Name] <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>]
[-Name] <String[]>
[-Function <String[]>]
[-Cmdlet <String[]>]
[-Variable <String[]>]
[-Alias <String[]>]
[-Force]
[-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]
[-PassThru]
[-AsCustomObject]
[-MinimumVersion <Version>]
[-MaximumVersion <String>]
[-RequiredVersion <Version>]
[-ArgumentList <Object[]>]
[-DisableNameChecking]
[-NoClobber]
[-Scope <String>]
-CimSession <CimSession>
[-CimResourceUri <Uri>]
[-CimNamespace <String>]
[<CommonParameters>]
Import-Module
[-Global]
[-Prefix <String>]
[-FullyQualifiedName] <ModuleSpecification[]>
[-Function <String[]>]
[-Cmdlet <String[]>]
[-Variable <String[]>]
[-Alias <String[]>]
[-Force]
[-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]
[-PassThru]
[-AsCustomObject]
[-ArgumentList <Object[]>]
[-DisableNameChecking]
[-NoClobber]
[-Scope <String>]
-PSSession <PSSession>
[<CommonParameters>]
Import-Module
[-Global]
[-Prefix <String>]
[-Assembly] <Assembly[]>
[-Function <String[]>]
[-Cmdlet <String[]>]
[-Variable <String[]>]
[-Alias <String[]>]
[-Force]
[-PassThru]
[-AsCustomObject]
[-ArgumentList <Object[]>]
[-DisableNameChecking]
[-NoClobber]
[-Scope <String>]
[<CommonParameters>]
Import-Module
[-Global]
[-Prefix <String>]
[-Function <String[]>]
[-Cmdlet <String[]>]
[-Variable <String[]>]
[-Alias <String[]>]
[-Force]
[-PassThru]
[-AsCustomObject]
[-ModuleInfo] <PSModuleInfo[]>
[-ArgumentList <Object[]>]
[-DisableNameChecking]
[-NoClobber]
[-Scope <String>]
[<CommonParameters>]
Description
Rutina Import-Module
přidá do aktuální relace jeden nebo více modulů. Moduly, které importujete, musí být nainstalovány na místním počítači nebo ve vzdáleném počítači.
Počínaje PowerShellem 3.0 se nainstalované moduly automaticky importují do relace, když v modulu použijete všechny příkazy nebo zprostředkovatele. K importu modulu ale můžete použít příkaz Import-Module
a můžete povolit a zakázat automatické importování modulů pomocí proměnné předvolby $PSModuleAutoloadingPreference
. Další informace omodule about_Moduleschch Další informace o proměnné $PSModuleAutoloadingPreference
naleznete v tématu about_Preference_Variables.
Modul je balíček, který obsahuje členy, které je možné použít v PowerShellu. Členové zahrnují rutiny, zprostředkovatele, skripty, funkce, proměnné a další nástroje a soubory. Po importu modulu můžete ve své relaci použít členy modulu.
K importu modulu použijte Name, Assembly, ModuleInfo, MinimumVersion a RequiredVersion parametry k identifikaci modulu, který se má importovat. Ve výchozím nastavení Import-Module
v importu členů se stejnými názvy jako členové v aktuální relaci.
Import-Module
importuje modul pouze do aktuální relace. Pokud chcete modul importovat do všech relací, přidejte do profilu PowerShellu příkaz Import-Module
. Další informace oprofilech about_Profilesch
Počínaje Windows PowerShellem 3.0 můžete pomocí Import-Module
importovat moduly MODELU CIM (Common Information Model), ve kterých jsou rutiny definované v souborech CDXML (Definition XML). Tato funkce umožňuje používat rutiny implementované v nespravovaných sestaveních kódu, jako jsou například rutiny napsané v jazyce C++.
Díky těmto novým funkcím se rutina Import-Module
stane primárním nástrojem pro správu heterogenních podniků, které zahrnují počítače s operačním systémem Windows a počítače s jinými operačními systémy.
Pokud chcete spravovat vzdálené počítače se vzdáleným operačním systémem Windows, které mají povolené vzdálené komunikace PowerShellu a PowerShellu, vytvořte na vzdáleném počítači PSSession a potom pomocí parametru PSSession Get-Module
získejte moduly PowerShellu v PSSession. Při importu modulů a následném použití importovaných příkazů v aktuální relaci se příkazy spouští implicitně v PSSession na vzdáleném počítači. Tuto strategii můžete použít ke správě vzdáleného počítače.
Podobnou strategii můžete použít ke správě počítačů, které nemají povolenou vzdálené komunikace PowerShellu, včetně počítačů, které nepoužívají operační systém Windows, a počítačů s Windows, které mají PowerShell, ale nemají povolenou vzdálené komunikace PowerShellu.
Začněte vytvořením relace CIM na vzdáleném počítači, což je připojení ke službě WMI (Windows Management Instrumentation) ve vzdáleném počítači. Pak pomocí parametru CIMSessionImport-Module
naimportujte moduly CIM ze vzdáleného počítače. Při importu modulu CIM a následném spuštění importovaných příkazů se příkazy spouští implicitně na vzdáleném počítači. Tuto strategii rozhraní WMI a CIM můžete použít ke správě vzdáleného počítače.
Příklady
Příklad 1: Import členů modulu do aktuální relace
Tento příklad importuje členy modulu PSDiagnostics do aktuální relace. Název název parametru je volitelný a je možné ho vynechat.
Import-Module -Name PSDiagnostics
Ve výchozím nastavení Import-Module
při importu modulu nevygeneruje žádný výstup. K vyžádání výstupu použijte parametr PassThru nebo AsCustomObject nebo podrobný společný parametr.
Příklad 2: Import všech modulů určených cestou k modulu
Tento příklad naimportuje všechny dostupné moduly v cestě určené proměnnou prostředí $env:PSModulePath
do aktuální relace.
Get-Module -ListAvailable | Import-Module
Příklad 3: Import členů několika modulů do aktuální relace
Tento příklad importuje členy modulů PSDiagnostics a Dism do aktuální relace.
$m = Get-Module -ListAvailable PSDiagnostics, Dism
Import-Module -ModuleInfo $m
Rutina Get-Module
získá moduly PSDiagnostics a Dism a uloží objekty do proměnné $m
. Parametr ListAvailable se vyžaduje, když získáváte moduly, které ještě nejsou importovány do relace.
ModuleInfo parametr Import-Module
se používá k importu modulů do aktuální relace.
Tyto příkazy jsou ekvivalentní použití operátoru kanálu (|
) k odeslání výstupu příkazu Get-Module
do Import-Module
.
Příklad 4: Import všech modulů určených cestou
Tento příklad používá explicitní cestu k identifikaci modulu k importu.
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'.
Použití parametru Podrobné způsobí, že Import-Module
ohlásí průběh při načítání modulu.
Bez Podrobné, PassThrunebo AsCustomObject parametr, Import-Module
negeneruje žádný výstup při importu modulu.
Příklad 5: Omezení členů modulů importovaných do relace
Tento příklad ukazuje, jak omezit, které členy modulu se importují do relace, a vliv tohoto příkazu na relaci.
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
První příkaz importuje pouze rutiny Disable-PSTrace
a Enable-PSTrace
z modulu PSDiagnostics. Parametr Funkce omezuje členy importované z modulu. K omezení ostatních členů importu modulu můžete také použítalias
Rutina Get-Module
získá objekt, který představuje modul PSDiagnostics. Vlastnost ExportedCmdlets uvádí všechny rutiny, které modul exportuje, i když nebyly všechny importovány.
Ve třetím příkazu získá parametr Module rutiny Get-Command
příkazy importované z modulu PSDiagnostics. Výsledky potvrdí, že se importovaly jenom rutiny Disable-PSTrace
a Enable-PSTrace
.
Příklad 6: Import členů modulu a přidání předpony
Tento příklad naimportuje modul PSDiagnostics do aktuální relace, přidá předponu k názvům členů a pak zobrazí názvy předpony členů. Předpona se vztahuje pouze na členy v aktuální relaci. Modul se nezmění.
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
Používá parametr PrefixImport-Module
přidá předponu x všem členům importovaným z modulu a parametr PassThru k vrácení objektu modulu, který představuje importovaný modul.
Rutina Get-Command
pro získání členů importovaných z modulu. Výstup ukazuje, že členy modulu byly správně předpony.
Příklad 7: Získání a použití vlastního objektu
Tyto příkazy ukazují, jak získat a použít vlastní objekt, který import-module vrátí.
Vlastní objekty zahrnují syntetické členy, které představují každý z importovaných členů modulu. Například rutiny a funkce v modulu se převedou na metody skriptů vlastního objektu.
Vlastní objekty jsou velmi užitečné při skriptování. Jsou také užitečné, když několik importovaných objektů má stejné názvy. Použití metody skriptu objektu je ekvivalentní k zadání plně kvalifikovaného názvu importovaného člena, včetně jeho názvu modulu.
Parametr AsCustomObject lze použít pouze při importu modulu skriptu, takže prvním úkolem je určit, které z dostupných modulů je modul skriptu.
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"()
První příkaz používá rutinu Get-Module
k získání dostupných modulů. Příkaz pomocí operátoru kanálu předává objekty modulu rutině Format-Table
, která obsahuje seznam Name a ModuleType každého modulu v tabulce.
Druhý příkaz používá rutinu Import-Module
k importu modulu skriptu Show-Calendar.
Příkaz používá parametr AsCustomObject k vyžádání vlastního objektu a parametr PassThru k vrácení objektu. Příkaz uloží výsledný vlastní objekt do proměnné $a
.
Třetí příkaz pomocí operátoru kanálu odešle proměnnou $a
do rutiny Get-Member
, která získá vlastnosti a metody PSCustomObject v $a
. Výstup zobrazuje metodu skriptu
Poslední příkaz používá metodu skriptu Show-Calendar. Název metody musí být uzavřený v uvozovkách, protože obsahuje spojovník.
Příklad 8: Opětovné importování modulu do stejné relace
Tento příklad ukazuje, jak použít parametr ForceImport-Module
při opětovném importu modulu do stejné relace.
Import-Module PSDiagnostics
Import-Module PSDiagnostics -Force -Prefix PS
První příkaz naimportuje modul PSDiagnostics. Druhý příkaz znovu naimportuje modul, tentokrát pomocí parametru předpony
Pomocí parametru Force modul Import-Module
odebere a pak ho znovu naimportuje. Bez tohoto parametru by relace obsahovala dvě kopie každé rutiny PSDiagnostics, jednu se standardním názvem a druhou s předponou.
Příklad 9: Spuštění příkazů skrytých importovanými příkazy
Tento příklad ukazuje, jak spouštět příkazy skryté importovanými příkazy. Modul TestModule. obsahuje funkci s názvem Get-Date
, která vrátí rok a den v roce.
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:26:12 PM
Prvnícmdlet returns a **DateTime** object with the current date. After importing the **TestModule** module,
Get-Date vrátí rok a den v roce.
Pomocí parametru AllGet-Command
získáme všechny příkazy Get-Date
v relaci. Výsledky ukazují, že v relaci existují dva příkazy Get-Date
, funkce z modulu TestModule a rutina z modulu Microsoft.PowerShell.Utility.
Vzhledem k tomu, že funkce mají přednost před rutinami, spustí se funkce Get-Date
z modulu TestModule místo rutiny Get-Date
. Pokud chcete spustit původní verzi Get-Date
musíte kvalifikovat název příkazu s názvem modulu.
Další informace o prioritě příkazů v PowerShellu najdete v tématu about_Command_Precedence.
Příklad 10: Import minimální verze modulu
Import-Module -Name PSWorkflow -MinimumVersion 3.0.0.0
Tento příkaz importuje modul Import-Module
k importu pouze verze 3.0.0.0 nebo vyšší modulu.
K importu konkrétní verze modulu můžete také použít parametr RequiredVersion nebo použít Module a version parametry klíčového slova #Requires
, které vyžadují konkrétní verzi modulu ve skriptu.
Příklad 11: Import modulu ze vzdáleného počítače
Tento příklad ukazuje, jak pomocí rutiny Import-Module
importovat modul ze vzdáleného počítače.
Tento příkaz používá funkci Implicitní komunikace PowerShellu.
Při importu modulů z jiné relace můžete použít rutiny v aktuální relaci. Příkazy, které používají rutiny, se ale skutečně spouští ve vzdálené relaci.
$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
První příkaz používá rutinu New-PSSession
k vytvoření vzdálené relace (PSSession) do počítače Server01. Příkaz uloží psSession do proměnné $s
.
Druhý příkaz pomocí parametru PSSession rutiny Get-Module
získá modul NetSecurity v relaci v proměnné $s
. Tento příkaz je ekvivalentní použití rutiny Invoke-Command
ke spuštění příkazu Get-Module
v relaci v $s
(Invoke-Command $s {Get-Module -ListAvailable -Name NetSecurity
). Výstup ukazuje, že v počítači je nainstalovaný modul NetSecurity a je k dispozici pro relaci v proměnné $s
.
Třetí příkaz používá parametr PSSession rutiny Import-Module
k importu modulu NetSecurity z relace v proměnné $s
do aktuální relace.
Čtvrtý příkaz používá rutinu Get-Command
k získání příkazů začínajících Get a zahrnutí brány firewall z modulu NetSecurity. Výstup získá příkazy a potvrdí, že modul a jeho rutiny byly importovány do aktuální relace.
Pátý příkaz používá rutinu Get-NetFirewallRule
k získání pravidel brány firewall vzdálené správy systému Windows na počítači se serverem Server01. Tento příkaz je ekvivalentní použití rutiny Invoke-Command
ke spuštění příkazu Get-NetFirewallRule
v relaci v proměnné $s
.
Příklad 12: Správa úložiště na vzdáleném počítači bez operačního systému Windows
V tomto příkladu, protože správce počítače nainstaloval zprostředkovatele rozhraní WMI zjišťování modulů, mohou příkazy CIM používat výchozí hodnoty, které jsou určené pro zprostředkovatele.
Příkazy v tomto příkladu umožňují spravovat systémy úložiště vzdáleného počítače, na kterém není spuštěn operační systém Windows.
První příkaz pomocí rutiny New-CimSession
vytvoří relaci ve vzdáleném počítači RSDGF03. Relace se připojí ke službě WMI ve vzdáleném počítači. Příkaz uloží relaci CIM do proměnné $cs
.
Druhý příkaz používá relaci CIM v proměnné $cs
ke spuštění příkazu Import-Module
na RSDGF03 počítači. Příkaz pomocí parametru
Třetí příkaz spustí Get-Command
příkaz na Get-Disk
v modulu Storage. Když importujete modul CIM do místní relace, PowerShell převede soubory CDXML pro každý příkaz na skripty PowerShellu, které se zobrazí jako funkce v místní relaci.
Čtvrtý příkaz spustí příkaz Get-Disk
. Přestože je příkaz zadán v místní relaci, spouští se implicitně na vzdáleném počítači, ze kterého byl importován. Příkaz získá objekty ze vzdáleného počítače a vrátí je do místní relace.
$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
Parametry
-Alias
Určuje aliasy, které tato rutina importuje z modulu do aktuální relace. Zadejte čárkami oddělený seznam aliasů. Jsou povoleny zástupné znaky.
Některé moduly při importu modulu automaticky exportuje vybrané aliasy do relace. Tento parametr umožňuje vybírat z exportovaných aliasů.
Typ: | String[] |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
-ArgumentList
Určuje pole argumentů nebo hodnot parametrů, které se předávají modulu skriptu během příkazu Import-Module
. Tento parametr je platný pouze při importu modulu skriptu.
Můžete také odkazovat na ArgumentList parametr podle jeho aliasu, args. Další informace naleznete v tématu about_Aliases.
Typ: | Object[] |
Aliasy: | Args |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-AsCustomObject
Označuje, že tato rutina vrátí vlastní objekt se členy, které představují importované členy modulu. Tento parametr je platný pouze pro moduly skriptu.
Pokud použijete parametr
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Assembly
Určuje pole objektů sestavení. Tato rutina importuje rutiny a zprostředkovatele implementované v zadaných objektech sestavení. Zadejte proměnnou obsahující objekty sestavení nebo příkaz, který vytváří objekty sestavení. Objekt sestavení lze také pipetovat do Import-Module
.
Pokud použijete tento parametr, importují se pouze rutiny a zprostředkovatelé implementované zadanými sestaveními. Pokud modul obsahuje další soubory, nenaimportují se a možná chybí důležité členy modulu. Tento parametr použijte k ladění a testování modulu nebo k jeho použití autorem modulu.
Typ: | Assembly[] |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-CimNamespace
Určuje obor názvů alternativního poskytovatele CIM, který zveřejňuje moduly CIM. Výchozí hodnota je obor názvů zprostředkovatele rozhraní WMI zjišťování modulů.
Tento parametr použijte k importu modulů CIM z počítačů a zařízení, která nepoužívají operační systém Windows.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-CimResourceUri
Určuje alternativní umístění pro moduly CIM. Výchozí hodnota je identifikátor URI prostředku zprostředkovatele rozhraní WMI zjišťování modulu ve vzdáleném počítači.
Tento parametr použijte k importu modulů CIM z počítačů a zařízení, která nepoužívají operační systém Windows.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | Uri |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-CimSession
Určuje relaci CIM na vzdáleném počítači. Zadejte proměnnou obsahující relaci CIM nebo příkaz, který získá relaci CIM, například příkaz Get-CimSession.
Import-Module
používá připojení relace CIM k importu modulů ze vzdáleného počítače do aktuální relace. Pokud použijete příkazy z importovaného modulu v aktuální relaci, příkazy skutečně běží na vzdáleném počítači.
Tento parametr můžete použít k importu modulů z počítačů a zařízení, na kterých není spuštěn operační systém Windows, a počítačů s Windows, které mají PowerShell, ale nemají povolenou vzdálené komunikace PowerShellu.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | CimSession |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Cmdlet
Určuje pole rutin, které tato rutina importuje z modulu do aktuální relace. Jsou povoleny zástupné znaky.
Některé moduly při importu modulu automaticky exportují vybrané rutiny do relace. Tento parametr umožňuje vybírat z exportovaných rutin.
Typ: | String[] |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
-DisableNameChecking
Označuje, že tato rutina potlačí zprávu, která vás upozorní při importu rutiny nebo funkce, jejíž název obsahuje neschválené sloveso nebo zakázaný znak.
Pokud modul, který importujete, ve výchozím nastavení exportuje rutiny nebo funkce, které mají ve svých názvech neschválené příkazy, zobrazí PowerShell následující zprávu upozornění:
UPOZORNĚNÍ: Některé importované názvy příkazů zahrnují neschválené příkazy, které by mohly být méně zjistitelné. Seznam schválených příkazů zobrazíte pomocí podrobného parametru pro další podrobnosti nebo typ Get-Verb.
Tato zpráva je pouze upozornění. Kompletní modul se stále importuje, včetně nevyhovujících příkazů. I když se zpráva zobrazuje uživatelům modulu, měl by problém s pojmenováním vyřešit autor modulu.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Force
Tento parametr způsobí načtení nebo opětovné načtení modulu nad aktuálního parametru.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-FullyQualifiedName
Určuje plně kvalifikovaný název specifikace modulu.
Typ: | ModuleSpecification[] |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-Function
Určuje pole funkcí, které tato rutina importuje z modulu do aktuální relace. Jsou povoleny zástupné znaky.
Některé moduly při importu modulu automaticky exportuje vybrané funkce do relace. Tento parametr umožňuje vybírat z exportovaných funkcí.
Typ: | String[] |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
-Global
Označuje, že tato rutina importuje moduly do globálního stavu relace, aby byly k dispozici pro všechny příkazy v relaci.
Ve výchozím nastavení se při zavolání rutiny Import-Module
z příkazového řádku, souboru skriptu nebo skriptublock všechny příkazy importují do globálního stavu relace.
Při vyvolání z jiného modulu Import-Module
rutina importuje příkazy v modulu, včetně příkazů z vnořených modulů, do stavu relace volajícího.
Spropitné
Měli byste se vyhnout volání Import-Module
z modulu. Místo toho deklarujte cílový modul jako vnořený modul v manifestu nadřazeného modulu. Deklarace vnořených modulů zlepšuje zjistitelnost závislostí.
Parametr Global odpovídá parametru Scope s hodnotou Global.
Pokud chcete omezit příkazy, které modul exportuje, použijte v modulu skriptu příkaz Export-ModuleMember
.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-MaximumVersion
Určuje maximální verzi. Tato rutina importuje pouze verzi modulu, která je menší nebo rovna zadané hodnotě. Pokud kvalifikuje žádná verze, Import-Module
vygeneruje chybu.
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-MinimumVersion
Určuje minimální verzi. Tato rutina importuje pouze verzi modulu, která je větší nebo rovna zadané hodnotě. Pokud kvalifikuje žádná verze, Import-Module
vygeneruje chybu.
Ve výchozím nastavení Import-Module
importuje modul bez kontroly čísla verze.
Použijte název parametru MinimumVersion nebo jeho alias Verze.
Pokud chcete zadat přesnou verzi, použijte parametr RequiredVersion. Můžete také použít parametry modulu
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | Version |
Aliasy: | Version |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-ModuleInfo
Určuje pole objektů modulu, které se mají importovat. Zadejte proměnnou, která obsahuje objekty modulu, nebo příkaz, který získá objekty modulu, například následující příkaz: Get-Module -ListAvailable
. Objekty modulu můžete také pipetovat do Import-Module
.
Typ: | PSModuleInfo[] |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-Name
Určuje názvy modulů, které se mají importovat. Zadejte název modulu nebo název souboru v modulu, například soubor .psd1, .psm1, .dllnebo ps1. Cesty k souborům jsou volitelné. Zástupné znaky nejsou povoleny. Názvy modulů a názvy souborů můžete také pipetovat do Import-Module
.
Pokud cestu vynecháte, Import-Module
vyhledá modul v cestách uložených v proměnné prostředí $env:PSModulePath
.
Kdykoli je to možné, zadejte pouze název modulu. Když zadáte název souboru, importují se pouze členové implementované v daném souboru. Pokud modul obsahuje další soubory, nenaimportují se a možná chybí důležité členy modulu.
Typ: | String[] |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | True |
-NoClobber
Označuje, že tato rutina neimportuje příkazy se stejnými názvy jako existující příkazy v aktuální relaci. Ve výchozím nastavení Import-Module
importují všechny exportované příkazy modulu.
Příkazy se stejnými názvy můžou v relaci skrýt nebo nahradit příkazy. Chcete-li zabránit konfliktům názvů příkazů v relaci, použijte parametry předpony
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Aliasy: | NoOverwrite |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-PassThru
Vrátí objekt představující položku, se kterou pracujete. Ve výchozím nastavení tato rutina negeneruje žádný výstup.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Prefix
Určuje předponu, kterou tato rutina přidá do podstatných jmen v názvech importovaných členů modulu.
Tento parametr použijte, chcete-li zabránit konfliktům názvů, ke kterým může dojít, když mají různé členy v relaci stejný název. Tento parametr nemění modul a nemá vliv na soubory, které modul importuje pro vlastní použití. Tyto moduly se označují jako vnořené moduly. Tato rutina má vliv jenom na jména členů v aktuální relaci.
Pokud například zadáte předponu UTC a pak naimportujete rutinu Get-Date
, rutina se v relaci označuje jako Get-UTCDate
a nezaměňuje se s původní rutinou Get-Date
.
Hodnota tohoto parametru má přednost před DefaultCommandPrefix vlastnost modulu, která určuje výchozí předponu.
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-PSSession
Určuje relaci spravovanou uživatelem PowerShellu (PSSession), ze které tato rutina importuje moduly do aktuální relace. Zadejte proměnnou, která obsahuje
Při importu modulu z jiné relace do aktuální relace můžete použít rutiny z modulu v aktuální relaci stejně jako rutiny z místního modulu. Příkazy, které používají vzdálené rutiny, skutečně běží ve vzdálené relaci, ale podrobnosti vzdálené komunikace se spravují na pozadí pomocí PowerShellu.
Tento parametr používá funkci Implicitní vzdálené komunikace PowerShellu. Je ekvivalentní použití rutiny Import-PSSession
k importu konkrétních modulů z relace.
Import-Module
nemůže importovat moduly PowerShell Core z jiné relace. Moduly PowerShell Core mají názvy, které začínají Microsoft.PowerShellem.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | PSSession |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-RequiredVersion
Určuje verzi modulu, kterou tato rutina importuje. Pokud verze není nainstalovaná, Import-Module
vygeneruje chybu.
Ve výchozím nastavení Import-Module
importuje modul bez kontroly čísla verze.
Pokud chcete zadat minimální verzi, použijte parametr MinimumVersion. Můžete také použít parametry modulu
Tento parametr byl představen ve Windows PowerShellu 3.0.
Skripty, které používají RequiredVersion k importu modulů, které jsou součástí stávajících verzí operačního systému Windows, se v budoucích verzích operačního systému Windows automaticky nespustí. Důvodem je to, že čísla verzí modulu PowerShellu v budoucích verzích operačního systému Windows jsou vyšší než čísla verzí modulů v existujících verzích operačního systému Windows.
Typ: | Version |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Scope
Určuje obor, do kterého tato rutina importuje modul.
Přijatelné hodnoty pro tento parametr jsou:
- Global. K dispozici pro všechny příkazy v relaci. Ekvivalent parametru Global.
- místní. K dispozici pouze v aktuálním oboru.
Ve výchozím nastavení se při zavolání rutiny Import-Module
z příkazového řádku, souboru skriptu nebo skriptublock všechny příkazy importují do globálního stavu relace. Pomocí parametru -Scope s hodnotou Místní můžete importovat obsah modulu do oboru skriptu nebo skriptu.
Při vyvolání z jiného modulu Import-Module
rutina importuje příkazy v modulu, včetně příkazů z vnořených modulů, do stavu relace volajícího. Zadání -Scope Global
nebo -Global
označuje, že tato rutina importuje moduly do globálního stavu relace, aby byly dostupné pro všechny příkazy v relaci.
Parametr Global odpovídá parametru Scope s hodnotou Global.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | String |
Přípustné hodnoty: | Local, Global |
Position: | Named |
Default value: | Current scope |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Variable
Určuje pole proměnných, které tato rutina importuje z modulu do aktuální relace. Zadejte seznam proměnných. Jsou povoleny zástupné znaky.
Některé moduly při importu modulu automaticky exportují vybrané proměnné do relace. Tento parametr umožňuje vybírat z exportovaných proměnných.
Typ: | String[] |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
Vstupy
System.String, System.Management.Automation.PSModuleInfo, System.Reflection.Assembly
Do této rutiny můžete připojit název modulu, objekt modulu nebo objekt sestavení.
Výstupy
None, System.Management.Automation.PSModuleInfo, or System.Management.Automation.PSCustomObject
Tato rutina vrátí Import-Module
negeneruje žádný výstup. Pokud zadáte parametr PassThru, rutina vygeneruje System.Management.Automation.PSModuleInfo objekt, který představuje modul. Pokud zadáte parametr AsCustomObject, vygeneruje objekt PSCustomObject.
Poznámky
Než budete moct importovat modul, musí být modul nainstalovaný na místním počítači. To znamená, že adresář modulu se musí zkopírovat do adresáře, který je přístupný vašemu místnímu počítači. Další informace naleznete v tématu about_Modules.
K importu modulů nainstalovaných na vzdálených počítačích můžete také použít
a parametry CIMSes sion. Příkazy, které používají rutiny v těchto modulech, se však ve skutečnosti spouští ve vzdálené relaci na vzdáleném počítači.Pokud do relace importujete členy se stejným názvem a stejným typem, PowerShell ve výchozím nastavení použije člena importovaného jako poslední. Proměnné a aliasy jsou nahrazeny a originály nejsou přístupné. Funkce, rutiny a zprostředkovatelé jsou pouze stínovány novými členy. K nim je možné získat přístup tak, že k názvu příkazu použijete název modulu snap-in, modulu nebo cesty funkce.
Pokud chcete aktualizovat formátovací data pro příkazy importované z modulu, použijte rutinu
Update-FormatData
.Update-FormatData
také aktualizuje formátovací data pro příkazy v relaci importované z modulů. Pokud se formátovací soubor modulu změní, můžete spustit příkazUpdate-FormatData
, který aktualizuje formátovací data pro importované příkazy. Modul nemusíte znovu importovat.Počínaje Windows PowerShellem 3.0 se základní příkazy nainstalované pomocí PowerShellu zabalí do modulů. V prostředí Windows PowerShell 2.0 a v hostitelských programech, které vytvářejí relace staršího stylu v novějších verzích PowerShellu, se základní příkazy zabalí do modulů snap-in (PSSnapins). Výjimkou je Microsoft.PowerShell.Core, což je vždy modul snap-in. Vzdálené relace, jako jsou relace spuštěné rutinou
New-PSSession
, jsou také relace ve starším stylu, které zahrnují základní moduly snap-in.Informace o metodě CreateDefault2, která vytváří novější relace se základními moduly, naleznete v CreateDefault2 Metoda.
Import-Module
nemůže importovat moduly PowerShell Core z jiné relace. Moduly PowerShell Core mají názvy, které začínají Microsoft.PowerShellem.V prostředí Windows PowerShell 2.0 nebyly některé hodnoty vlastností objektu modulu, například ExportedCmdlets a NestedModules hodnoty vlastností, vyplněny, dokud se modul nenaimportoval a nebyl k dispozici u objektu modulu, který PassThru parametr vrátí. Ve Windows PowerShellu 3.0 se vyplní všechny hodnoty vlastností modulu.
Pokud se pokusíte importovat modul, který obsahuje sestavení smíšeného režimu, která nejsou kompatibilní s Prostředím Windows PowerShell 3.0,
Import-Module
vrátí chybovou zprávu podobná následující.Import-Module: Sestavení smíšeného režimu je sestaveno s verzí modulu runtime v2.0.50727 a nelze ho načíst do modulu runtime 4.0 bez dalších informací o konfiguraci.
K této chybě dochází v případě, že modul navržený pro Prostředí Windows PowerShell 2.0 obsahuje alespoň jedno sestavení se smíšeným modulem, tj. sestavení, které zahrnuje spravovaný i nespravovaný kód, například C++ a C#.
Pokud chcete importovat modul, který obsahuje sestavení smíšeného režimu, spusťte Windows PowerShell 2.0 pomocí následujícího příkazu a potom zkuste příkaz
Import-Module
znovu.PowerShell.exe -Version 2.0
Aby bylo možné používat funkci relace CIM, musí mít vzdálený počítač WS-Management vzdálenou komunikace a rozhraní WMI (Windows Management Instrumentation), což je implementace modelu CIM (Common Information Model) od Microsoftu. Počítač musí mít také poskytovatele rozhraní WMI pro zjišťování modulů nebo alternativního poskytovatele CIM, který má stejné základní funkce.
Funkci relace CIM můžete použít na počítačích, na kterých není spuštěn operační systém Windows a na počítačích s Windows, které mají PowerShell, ale nemají povolenou vzdálené komunikace PowerShellu.
Parametry CIM můžete také použít k získání modulů CIM z počítačů s povolenou vzdálené komunikace PowerShellu, včetně místního počítače. Při vytváření relace CIM na místním počítači používá PowerShell k vytvoření relace DCOM místo rozhraní WMI.