PowerShell-modul importálása
Miután telepített egy modult egy rendszeren, valószínűleg importálni szeretné a modult. Az importálás az a folyamat, amely betölti a modult az aktív memóriába, hogy a felhasználó hozzáfér a modulhoz a PowerShell-munkamenetben. A PowerShell 2.0-ban importálhat egy újonnan telepített PowerShell-modult az Import-Module parancsmag hívásával. A PowerShell 3.0-ban a PowerShell képes implicit módon importálni egy modult, ha a modul egyik függvényét vagy parancsmagját egy felhasználó hív meg. Vegye figyelembe, hogy mindkét verzió feltételezi, hogy a modult olyan helyre telepíti, ahol a PowerShell megtalálja; További információ: PowerShell-modul telepítése. A moduljegyzék használatával korlátozhatja a modul exportált részeit, a hívás paramétereivel pedig korlátozhatja az importált Import-Module
részeket.
Alkalmazás importálása Snap-In (PowerShell 1.0)
A modulok nem léteztek a PowerShell 1.0-ban: ehelyett beépülő modulokat kellett regisztrálnia és használnia. Jelenleg azonban nem ajánlott ezt a technológiát használni, mivel a modulok telepítése és importálása általában egyszerűbb. További információ: Windows PowerShell beépülő modul létrehozása.
Modul importálása Import-Module (PowerShell 2.0)
A PowerShell 2.0 a megfelelő nevű Import-Module parancsmagot használja a modulok importáláshoz. A parancsmag futtatásakor a Windows PowerShell megkeresi a megadott modult a változóban megadott PSModulePath
könyvtárakban. A megadott könyvtár megtalálása után a Windows PowerShell a következő sorrendben keres fájlokat: moduljegyzékfájlok (.psd1), szkriptmodul-fájlok (.psm1), bináris modulfájlok (.dll). A könyvtárak kereséshez való hozzáadásával kapcsolatos további információkért lásd: about_PSModulePath.
Az alábbi kód a modulok importálását ismerteti:
Import-Module myModule
Feltételezve, hogy a myModule a fájlban PSModulePath
található, a PowerShell a myModule modult az aktív memóriába töltné be. Ha a myModule nem elérési úton található, akkor is explicit módon megmondhatja a PSModulePath
PowerShellnek, hogy hol található:
Import-Module -Name C:\myRandomDirectory\myModule -Verbose
A paraméterrel azt is azonosíthatja, hogy mit exportál a modulból, és mit importál az -Verbose
aktív memóriába. Az exportálások és az importok is korlátozzák, hogy mi lesz elérhető a felhasználó számára: a különbség az, hogy ki szabályozza a láthatóságot. Az exportálásokat lényegében a modulon belüli kód vezérli. Ezzel szemben az importokat a hívás Import-Module
vezérli. További információ: Az importált tagok korlátozása.
Modul implicit importálása (PowerShell 3.0)
A Windows PowerShell 3.0-stól kezdve a modulok automatikusan importálódnak, ha a modul bármely parancsmagját vagy függvényét egy parancs használja. Ez a funkció a PSModulePath környezeti változó értékének megfelelő könyvtár bármelyik modulján működik. Ha azonban nem egy érvényes elérési úton menti a modult, akkor is betöltheti őket a fent leírt explicit Import-Module lehetőséggel.
Az alábbi műveletek aktiválják egy modul automatikus importálását, más néven a modul automatikus betöltését.
Parancsmag használata parancsban. A begépeléssel például importálhatja a parancsmagot tartalmazó
Get-ExecutionPolicy
Microsoft.PowerShell.SecurityGet-ExecutionPolicy
modult.A Get-Command parancsmagot használva le kell kapnia a parancsot. A begépelése például importálja a parancsmagot tartalmazó
Get-Command Get-JobTrigger
PSScheduledJobGet-JobTrigger
modult. A helyettesítő karaktereket tartalmazó parancsok felderítésnek minősülnek, és nem indítják elGet-Command
a modulok importálását.Segítség a Get-Help parancsmag használatával egy parancsmaghoz. A begépeléssel például importálhatja a parancsmagot tartalmazó
Get-Help Get-WinEvent
Microsoft.PowerShell.DiagnosticsGet-WinEvent
modult.
A modulok automatikus importálásának támogatásához a parancsmag az összes telepített modul összes parancsmagját és függvényét lekérte, még akkor is, ha a modult nem importálta Get-Command
a munkamenetbe. További információért tekintse meg a Get-Command parancsmag súgótémakörét.
Az importálási folyamat
Egy modul importálásakor a rendszer létrehoz egy új munkamenet-állapotot a modulhoz, és létrehoz egy System.Management.Automation.PSModuleInfo objektumot a memóriában. Minden importált modulhoz létrejön egy munkamenet-állapot (beleértve a gyökérmodult és a beágyazott modulokat). A gyökérmodulból exportált tagok, beleértve a beágyazott modulok által a gyökérmodulba exportált tagokat is, importálva vannak a hívó munkamenet-állapotába.
A modulokból exportált tagok metaadatainak ModuleName tulajdonsága van. Ez a tulajdonság az azokat exportált modul nevével tölti fel.
Figyelmeztetés
Ha egy exportált tag neve nem jóváhagyott igét használ, vagy ha a tag neve korlátozott karaktereket használ, az Import-Module parancsmag futtatásakor figyelmeztetés jelenik meg.
Alapértelmezés szerint az Import-Module parancsmag nem ad vissza objektumot a folyamatnak. A parancsmag azonban támogatja a PassThru paramétert, amely a System.Management.Automation.PSModuleInfo objektum visszaadására használható minden importált modulhoz. Ha kimenetet kell küldenie a gazdagépnek, a felhasználóknak futtatniuk kell a Write-Host parancsmagot.
Az importált tagok korlátozása
Amikor az Import-Module parancsmaggal importál egy modult, alapértelmezés szerint a modul összes exportált tagja importálva lesz a munkamenetbe, beleértve a modulba beágyazott modul által exportált parancsokat is. Alapértelmezés szerint a változók és aliasok nincsenek exportálva. Az exportált tagok korlátozására használjon egy moduljegyzéket. Az importált tagok korlátozására használja a parancsmag alábbi Import-Module
paramétereit.
Függvény: Ez a paraméter korlátozza az exportált függvényeket. (Ha moduljegyzéket használ, tekintse meg a FunctionsToExport kulcsot.)
`Parancsmag: Ez a paraméter korlátozza az exportált parancsmagokat (ha moduljegyzéket használ, tekintse meg a CmdletsToExport kulcsot.)
Változó: Ez a paraméter korlátozza az exportált változókat (ha moduljegyzéket használ, tekintse meg a VariablesToExport kulcsot.)
Alias: Ez a paraméter korlátozza az exportált aliasokat (ha moduljegyzéket használ, tekintse meg az AliasesToExport kulcsot.)
Lásd még:
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: