Get-Module
Wyświetl listę modułów zaimportowanych w bieżącej sesji lub zaimportowanych z modułu PSModulePath.
Składnia
Get-Module
[[-Name] <String[]>]
[-FullyQualifiedName <ModuleSpecification[]>]
[-All]
[<CommonParameters>]
Get-Module
[[-Name] <String[]>]
[-FullyQualifiedName <ModuleSpecification[]>]
[-All]
[-ListAvailable]
[-PSEdition <String>]
[-Refresh]
[<CommonParameters>]
Get-Module
[[-Name] <String[]>]
[-FullyQualifiedName <ModuleSpecification[]>]
[-ListAvailable]
[-PSEdition <String>]
[-Refresh]
-PSSession <PSSession>
[<CommonParameters>]
Get-Module
[[-Name] <String[]>]
[-FullyQualifiedName <ModuleSpecification[]>]
[-ListAvailable]
[-Refresh]
-CimSession <CimSession>
[-CimResourceUri <Uri>]
[-CimNamespace <String>]
[<CommonParameters>]
Opis
Polecenie Get-Module
cmdlet wyświetla listę zaimportowanych modułów programu PowerShell lub zaimportowanych do sesji programu PowerShell. Bez parametrów Get-Module
pobiera moduły, które zostały zaimportowane do bieżącej sesji. Parametr ListAvailable służy do wyświetlania listy modułów, które są dostępne do zaimportowania ze ścieżek określonych w zmiennej środowiskowej PSModulePath ($env:PSModulePath
).
Zwracany obiekt Get-Module
modułu zawiera cenne informacje o module. Możesz również przekazać obiekty modułu do innych poleceń cmdlet, takich jak Import-Module
polecenia cmdlet i Remove-Module
.
Get-Module
wyświetla moduły, ale nie importuje ich. Począwszy od programu Windows PowerShell 3.0 moduły są importowane automatycznie podczas używania polecenia w module, ale Get-Module
polecenie nie wyzwala automatycznego importowania. Moduły można również zaimportować do sesji przy użyciu Import-Module
polecenia cmdlet .
Począwszy od programu Windows PowerShell 3.0, można pobrać i zaimportować moduły z sesji zdalnych do sesji lokalnej. Ta strategia używa funkcji niejawnej komunikacji zdalnej programu PowerShell i jest równoważna Import-PSSession
użyciu polecenia cmdlet . Gdy używasz poleceń w modułach zaimportowanych z innej sesji, polecenia są uruchamiane niejawnie w sesji zdalnej. Ta funkcja umożliwia zarządzanie komputerem zdalnym z poziomu sesji lokalnej.
Ponadto, począwszy od programu Windows PowerShell 3.0, można użyć modułów Get-Module
Common Information Model (CIM) i Import-Module
pobrać je. Moduły ciM definiują polecenia cmdlet w plikach XML definicji polecenia cmdlet (CDXML). Ta funkcja umożliwia używanie poleceń cmdlet, które są implementowane w zestawach kodu niezarządzanego, takich jak te napisane w języku C++.
Niejawna komunikacja zdalna może służyć do zarządzania komputerami zdalnymi z włączoną obsługą komunikacji zdalnej programu PowerShell.
Utwórz program PSSession na komputerze zdalnym, a następnie użyj parametru PSSession programu Get-Module
, aby pobrać moduły programu PowerShell w sesji zdalnej. Podczas importowania modułu z sesji zdalnej zaimportowane polecenia są uruchamiane w sesji na komputerze zdalnym.
Podobną strategię można użyć do zarządzania komputerami, które nie mają włączonej komunikacji zdalnej programu PowerShell. Obejmują one komputery, na których nie działa system operacyjny Windows, oraz komputery z programem PowerShell, ale nie mają włączonej komunikacji zdalnej programu PowerShell.
Rozpocznij od utworzenia sesji modelu cim na komputerze zdalnym. Sesja modelu CIM jest połączeniem z instrumentacją zarządzania Windows (WMI) na komputerze zdalnym. Następnie użyj parametru CIMSession polecenia , Get-Module
aby pobrać moduły CIM z sesji modelu CIM. Po zaimportowaniu modułu CIM przy użyciu polecenia cmdlet , a następnie uruchomieniu Import-Module
zaimportowanych poleceń polecenia są uruchamiane niejawnie na komputerze zdalnym. Tę strategię WMI i CIM można użyć do zarządzania komputerem zdalnym.
Przykłady
Przykład 1. Pobieranie modułów zaimportowanych do bieżącej sesji
Get-Module
To polecenie pobiera moduły zaimportowane do bieżącej sesji.
Przykład 2. Pobieranie zainstalowanych modułów i dostępnych modułów
Get-Module -ListAvailable
To polecenie pobiera moduły zainstalowane na komputerze i można je zaimportować do bieżącej sesji.
Get-Module
szuka dostępnych modułów w ścieżce określonej przez zmienną środowiskową $env:PSModulePath . Aby uzyskać więcej informacji na temat programu PSModulePath, zobacz about_Modules i about_Environment_Variables.
Przykład 3. Pobieranie wszystkich wyeksportowanych plików
Get-Module -ListAvailable -All
To polecenie pobiera wszystkie wyeksportowane pliki dla wszystkich dostępnych modułów.
Przykład 4. Pobieranie modułu przy użyciu w pełni kwalifikowanej nazwy
$FullyQualifiedName = @{ModuleName="Microsoft.PowerShell.Management";ModuleVersion="3.1.0.0"}
Get-Module -FullyQualifiedName $FullyQualifiedName | Format-Table -Property Name,Version
Name Version
---- -------
Microsoft.PowerShell.Management 3.1.0.0
Ten przykład pobiera moduł Microsoft.PowerShell.Management , określając w pełni kwalifikowaną nazwę modułu przy użyciu parametru FullyQualifiedName . Następnie polecenie potokuje wyniki do Format-Table
polecenia cmdlet, aby sformatować wyniki jako tabelę z nagłówkami kolumn Name (Nazwa ) i Version (Wersja ).
W pełni kwalifikowanej nazwy modułu wartość ModuleVersion działa jako minimalna wersja. W tym przykładzie jest zgodny z dowolnym modułem Microsoft.PowerShell.Management , który jest w wersji lub nowszej 3.1.0.0
.
Przykład 5. Pobieranie właściwości modułu
Get-Module | Get-Member -MemberType Property | Format-Table Name
Name
----
AccessMode
Author
ClrVersion
CompanyName
Copyright
Definition
Description
DotNetFrameworkVersion
ExportedAliases
ExportedCmdlets
ExportedCommands
ExportedFormatFiles
ExportedFunctions
ExportedTypeFiles
ExportedVariables
ExportedWorkflows
FileList
Guid
HelpInfoUri
LogPipelineExecutionDetails
ModuleBase
ModuleList
ModuleType
Name
NestedModules
OnRemove
Path
PowerShellHostName
PowerShellHostVersion
PowerShellVersion
PrivateData
ProcessorArchitecture
RequiredAssemblies
RequiredModules
RootModule
Scripts
SessionState
Version
To polecenie pobiera właściwości obiektu PSModuleInfo , który Get-Module
zwraca. Istnieje jeden obiekt dla każdego pliku modułu.
Właściwości można użyć do formatowania i filtrowania obiektów modułu. Aby uzyskać więcej informacji na temat właściwości, zobacz Właściwości psModuleInfo.
Dane wyjściowe zawierają nowe właściwości, takie jak Author i CompanyName, które zostały wprowadzone w programie Windows PowerShell 3.0.
Przykład 6. Grupowanie wszystkich modułów według nazwy
Get-Module -ListAvailable -All | Format-Table -Property Name, Moduletype, Path -Groupby Name
Name: AppLocker
Name ModuleType Path
---- ---------- ----
AppLocker Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\AppLocker\AppLocker.psd1
Name: Appx
Name ModuleType Path
---- ---------- ----
Appx Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Appx\en-US\Appx.psd1
Appx Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Appx\Appx.psd1
Appx Script C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Appx\Appx.psm1
Name: BestPractices
Name ModuleType Path
---- ---------- ----
BestPractices Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\BestPractices\BestPractices.psd1
Name: BitsTransfer
Name ModuleType Path
---- ---------- ----
BitsTransfer Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\BitsTransfer\BitsTransfer.psd1
To polecenie pobiera wszystkie pliki modułu, zarówno zaimportowane, jak i dostępne, a następnie grupuje je według nazwy modułu. Dzięki temu można zobaczyć pliki modułów eksportowane przez każdy skrypt.
Przykład 7. Wyświetlanie zawartości manifestu modułu
Te polecenia wyświetlają zawartość manifestu modułu dla modułu Windows PowerShell BitsTransfer .
Moduły nie muszą mieć plików manifestu. Gdy mają plik manifestu, plik manifestu jest wymagany tylko do uwzględnienia numeru wersji. Jednak pliki manifestu często zawierają przydatne informacje o module, jego wymaganiach i jego zawartości.
# First command
$m = Get-Module -list -Name BitsTransfer
# Second command
Get-Content $m.Path
@ {
GUID = "{8FA5064B-8479-4c5c-86EA-0D311FE48875}"
Author = "Microsoft Corporation"
CompanyName = "Microsoft Corporation"
Copyright = "Microsoft Corporation. All rights reserved."
ModuleVersion = "1.0.0.0"
Description = "Windows PowerShell File Transfer Module"
PowerShellVersion = "2.0"
CLRVersion = "2.0"
NestedModules = "Microsoft.BackgroundIntelligentTransfer.Management"
FormatsToProcess = "FileTransfer.Format.ps1xml"
RequiredAssemblies = Join-Path $psScriptRoot "Microsoft.BackgroundIntelligentTransfer.Management.Interop.dll"
}
Pierwsze polecenie pobiera obiekt PSModuleInfo reprezentujący moduł BitsTransfer. Zapisuje obiekt w zmiennej $m
.
Drugie polecenie używa Get-Content
polecenia cmdlet do pobrania zawartości pliku manifestu w określonej ścieżce. Używa notacji kropkowej, aby uzyskać ścieżkę do pliku manifestu, który jest przechowywany we właściwości Path obiektu. Dane wyjściowe zawierają zawartość manifestu modułu.
Przykład 8. Wyświetlanie listy plików w katalogu modułów
dir (Get-Module -ListAvailable FileTransfer).ModuleBase
Directory: C:\Windows\system32\WindowsPowerShell\v1.0\Modules\FileTransfer
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 12/16/2008 12:36 PM en-US
-a--- 11/19/2008 11:30 PM 16184 FileTransfer.Format.ps1xml
-a--- 11/20/2008 11:30 PM 1044 FileTransfer.psd1
-a--- 12/16/2008 12:20 AM 108544 Microsoft.BackgroundIntelligentTransfer.Management.Interop.dll
To polecenie wyświetla listę plików w katalogu modułu. Jest to inny sposób określenia, co znajduje się w module przed zaimportowaniem. Niektóre moduły mogą zawierać pliki pomocy lub pliki ReadMe opisujące moduł.
Przykład 9. Pobieranie modułów zainstalowanych na komputerze
$s = New-PSSession -ComputerName Server01
Get-Module -PSSession $s -ListAvailable
Te polecenia pobierają moduły zainstalowane na komputerze Server01.
Pierwsze polecenie używa New-PSSession
polecenia cmdlet do utworzenia psSession na komputerze Server01. Polecenie zapisuje plik PSSession w zmiennej $s
.
Drugie polecenie używa parametrów PSSession i ListAvailable , Get-Module
aby pobrać moduły w pliku PSSession w zmiennej $s
.
W przypadku potoku modułów z innych sesji do Import-Module
polecenia cmdlet Import-Module
zaimportuj moduł do bieżącej sesji przy użyciu niejawnej funkcji komunikacji zdalniej. Jest to równoważne użyciu Import-PSSession
polecenia cmdlet . Polecenia cmdlet z modułu można użyć w bieżącej sesji, ale polecenia korzystające z tych poleceń cmdlet faktycznie uruchamiają sesję zdalną. Aby uzyskać więcej informacji, zobacz tematy Import-Module
oraz Import-PSSession
.
Przykład 10: Zarządzanie komputerem, który nie uruchamia systemu operacyjnego Windows
Polecenia w tym przykładzie umożliwiają zarządzanie systemami magazynowania komputera zdalnego, który nie korzysta z systemu operacyjnego Windows. W tym przykładzie, ponieważ administrator komputera zainstalował dostawcę WMI odnajdywania modułów, polecenia modelu CIM mogą używać wartości domyślnych, które są przeznaczone dla dostawcy.
$cs = New-CimSession -ComputerName RSDGF03
Get-Module -CimSession $cs -Name Storage | Import-Module
Get-Command Get-Disk
CommandType Name ModuleName
----------- ---- ----------
Function Get-Disk Storage
Get-Disk
Number Friendly Name OperationalStatus Total Size Partition Style
------ ------------- ----------------- ---------- ---------------
0 Virtual HD ATA Device Online 40 GB MBR
Pierwsze polecenie używa New-CimSession
polecenia cmdlet do utworzenia sesji na RSDGF03 komputerze zdalnym. Sesja nawiązuje połączenie z usługą WMI na komputerze zdalnym. Polecenie zapisuje sesję modelu CIM w zmiennej $cs
.
Drugie polecenie używa sesji modelu CIM w zmiennej $cs
do uruchamiania Get-Module
polecenia na komputerze RSDGF03. Polecenie używa parametru Name do określenia modułu Storage. Polecenie używa operatora potoku (|
), aby wysłać moduł Storage do Import-Module
polecenia cmdlet, które importuje go do sesji lokalnej.
Trzecie polecenie uruchamia Get-Command
polecenie cmdlet w poleceniu Get-Disk
w module Storage.
Podczas importowania modułu CIM do sesji lokalnej program PowerShell konwertuje pliki CDXML reprezentujące moduł CIM na skrypty programu PowerShell, które są wyświetlane jako funkcje w sesji lokalnej.
Czwarte polecenie uruchamia Get-Disk
polecenie . Mimo że polecenie jest wpisywane w sesji lokalnej, jest uruchamiane niejawnie na komputerze zdalnym, z którego został zaimportowany. Polecenie pobiera obiekty z komputera zdalnego i zwraca je do sesji lokalnej.
Parametry
-All
Wskazuje, że to polecenie cmdlet pobiera wszystkie moduły w każdym folderze modułu, w tym zagnieżdżone moduły, pliki manifestu (.psd1
), pliki modułu skryptu (.psm1
) i pliki modułu binarnego (.dll
). Bez tego parametru Get-Module
pobiera tylko domyślny moduł w każdym folderze modułu.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | False |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-CimNamespace
Określa przestrzeń nazw alternatywnego dostawcy modelu CIM, który uwidacznia moduły MODELU CIM. Wartość domyślna to przestrzeń nazw dostawcy usługi WMI odnajdywania modułów.
Użyj tego parametru, aby pobrać moduły CIM z komputerów i urządzeń, które nie korzystają z systemu operacyjnego Windows.
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-CimResourceUri
Określa alternatywną lokalizację modułów CIM. Wartość domyślna to identyfikator URI zasobu dostawcy usługi WMI odnajdywania modułów na komputerze zdalnym.
Użyj tego parametru, aby pobrać moduły CIM z komputerów i urządzeń, które nie korzystają z systemu operacyjnego Windows.
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Typ: | Uri |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-CimSession
Określa sesję modelu ciM na komputerze zdalnym. Wprowadź zmienną zawierającą sesję modelu CIM lub polecenie, które pobiera sesję modelu CIM, na przykład polecenie Get-CimSession .
Get-Module
używa połączenia sesji modelu CIM do pobierania modułów z komputera zdalnego. Podczas importowania modułu Import-Module
przy użyciu polecenia cmdlet i używania poleceń z zaimportowanego modułu w bieżącej sesji polecenia są uruchamiane na komputerze zdalnym.
Ten parametr służy do pobierania modułów z komputerów i urządzeń, które nie korzystają z systemu operacyjnego Windows, oraz komputerów z programem PowerShell, ale nie mają włączonej komunikacji zdalnej programu PowerShell.
Parametr CimSession pobiera wszystkie moduły w ciMSession. Można jednak importować tylko moduły oparte na modelu CIM i Xml definicji poleceń cmdlet (CDXML).
Typ: | CimSession |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-FullyQualifiedName
Wartość może być nazwą modułu, pełną specyfikacją modułu lub ścieżką do pliku modułu.
Gdy wartość jest ścieżką, ścieżka może być w pełni kwalifikowana lub względna. Ścieżka względna jest rozpoznawana względem skryptu zawierającego instrukcję using.
Gdy wartość jest nazwą lub specyfikacją modułu, program PowerShell przeszukuje element PSModulePath dla określonego modułu.
Specyfikacja modułu to tabela skrótu zawierająca następujące klucze.
ModuleName
- Required Określa nazwę modułu.GUID
- Opcjonalnie Określa identyfikator GUID modułu.- Wymagane jest również określenie co najmniej jednego z trzech poniższych kluczy.
ModuleVersion
- Określa minimalną akceptowalną wersję modułu.MaximumVersion
- Określa maksymalną akceptowalną wersję modułu.RequiredVersion
- Określa dokładną, wymaganą wersję modułu. Nie można tego używać z innymi kluczami wersji.
Nie można określić parametru FullyQualifiedName w tym samym poleceniu co parametr Name .
Typ: | ModuleSpecification[] |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-ListAvailable
Wskazuje, że to polecenie cmdlet pobiera wszystkie zainstalowane moduły. Get-Module
pobiera moduły w ścieżkach wymienionych w zmiennej środowiskowej PSModulePath . Bez tego parametru pobiera tylko moduły, Get-Module
które są wymienione w zmiennej środowiskowej PSModulePath i które są ładowane w bieżącej sesji. ListAvailable nie zwraca informacji o modułach, które nie zostały znalezione w zmiennej środowiskowej PSModulePath , nawet jeśli te moduły są ładowane w bieżącej sesji.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Name
Określa nazwy lub wzorce nazw modułów pobieranych przez to polecenie cmdlet. Dozwolone są symbole wieloznaczne. Możesz również przekazać nazwy potokowi do Get-Module
. Nie można określić parametru FullyQualifiedName w tym samym poleceniu co parametr Name .
Nazwa nie może zaakceptować identyfikatora GUID modułu jako wartości. Aby zwrócić moduły, określając identyfikator GUID, zamiast tego użyj metody FullyQualifiedName .
Typ: | String[] |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | True |
-PSEdition
Pobiera moduły obsługujące określoną edycję programu PowerShell.
Dopuszczalne wartości tego parametru to:
Desktop
Core
Polecenie Get-Module
cmdlet sprawdza właściwość CompatiblePSEditions obiektu PSModuleInfo dla określonej wartości i zwraca tylko te moduły, które mają ustawione.
Uwaga
- Wersja Desktop: jest oparta na programie .NET Framework i zapewnia zgodność ze skryptami i modułami przeznaczonymi dla wersji programu PowerShell działających w pełnych wersjach systemu Windows, takich jak instalacja Podstawowe funkcje serwera i system Windows dla komputerów stacjonarnych.
- Wersja Core: jest oparta na module .NET Core i zapewnia zgodność ze skryptami i modułami przeznaczonymi dla wersji programu PowerShell działających w ograniczonych wersjach systemu Windows, takich jak system Nano Server i Windows IoT.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-PSSession
Pobiera moduły w określonej sesji programu PowerShell zarządzanej przez użytkownika (PSSession). Wprowadź zmienną zawierającą sesję, polecenie, które pobiera sesję, takie jak Get-PSSession
polecenie, lub polecenie, które tworzy sesję, na przykład New-PSSession
polecenie.
Gdy sesja jest połączona z komputerem zdalnym, należy określić parametr ListAvailable .
Polecenie Get-Module
używające parametru PSSession jest równoważne użyciu Invoke-Command
polecenia cmdlet do uruchomienia Get-Module -ListAvailable
polecenia w programie PSSession.
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Typ: | PSSession |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Refresh
Wskazuje, że to polecenie cmdlet odświeża pamięć podręczną zainstalowanych poleceń. Pamięć podręczna poleceń jest tworzona podczas uruchamiania sesji. Umożliwia to polecenie cmdlet uzyskiwanie Get-Command
poleceń z modułów, które nie są importowane do sesji.
Ten parametr jest przeznaczony dla scenariuszy programowania i testowania, w których zawartość modułów zmieniła się od początku sesji.
Po określeniu parametru Refresh w poleceniu należy określić wartość ListAvailable.
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | False |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
Dane wejściowe
Nazwy modułów można przekazać potokom do tego polecenia cmdlet.
Dane wyjściowe
To polecenie cmdlet zwraca obiekty reprezentujące moduły. Po określeniu parametru Get-Module
ListAvailable zwraca obiekt ModuleInfoGrouping, który jest typem obiektu PSModuleInfo, który ma te same właściwości i metody.
Uwagi
Program Windows PowerShell zawiera następujące aliasy dla programu Get-Module
:
gmo
Począwszy od programu Windows PowerShell 3.0, podstawowe polecenia zawarte w programie PowerShell są pakowane w modułach. Wyjątkiem jest Microsoft.PowerShell.Core, który jest przystawką (PSSnapin). Domyślnie do sesji jest dodawana tylko przystawka Microsoft.PowerShell.Core . Moduły są importowane automatycznie przy pierwszym użyciu i można je zaimportować za pomocą
Import-Module
polecenia cmdlet .W programie Windows PowerShell 2.0 i programach hosta, które tworzą starsze sesje w nowszych wersjach programu PowerShell, podstawowe polecenia są pakowane w przystawkach (PSSnapins). Wyjątkiem jest Microsoft.PowerShell.Core, który jest zawsze przystawką. Ponadto sesje zdalne, takie jak te uruchomione przez
New-PSSession
polecenie cmdlet, są sesjami w starszym stylu, które obejmują podstawowe przystawki.Aby uzyskać informacje o metodzie CreateDefault2 , która tworzy nowsze sesje z modułami podstawowymi, zobacz CreateDefault2 Method (Metoda CreateDefault2).
Get-Module
Pobiera tylko moduły w lokalizacjach przechowywanych w wartości zmiennej środowiskowej PSModulePath ($env:PSModulePath
). PolecenieImport-Module
cmdlet może importować moduły w innych lokalizacjach, ale nie można ich pobrać zaGet-Module
pomocą polecenia cmdlet .Ponadto, począwszy od programu PowerShell 3.0, nowe właściwości zostały dodane do obiektu, który
Get-Module
zwraca, co ułatwia poznawanie modułów jeszcze przed ich zaimportowaniem. Wszystkie właściwości są wypełniane przed zaimportowaniem. Należą do nich właściwości ExportCommands, ExportCmdlets i ExportFunctions , które zawierają listę poleceń eksportowanych przez moduł.Parametr ListAvailable pobiera tylko poprawnie sformułowane moduły, czyli foldery zawierające co najmniej jeden plik, którego nazwa podstawowa jest taka sama jak nazwa folderu modułu. Nazwa podstawowa to nazwa bez rozszerzenia nazwy pliku. Foldery zawierające pliki o różnych nazwach są uważane za kontenery, ale nie moduły.
Aby pobrać moduły implementowane jako pliki DLL, ale nie są ujęte w folderze modułu, określ parametry ListAvailable i All .
Aby korzystać z funkcji sesji modelu CIM, komputer zdalny musi mieć zdalną funkcję komunikacji zdalnej w usłudze WS-Management i instrumentację zarządzania Windows (WMI), która jest implementacją firmy Microsoft standardu Common Information Model (CIM). Komputer musi również mieć dostawcę usługi WMI odnajdywania modułów lub alternatywnego dostawcę usługi WMI, który ma te same podstawowe funkcje.
Możesz użyć funkcji sesji modelu ciM na komputerach, na których nie jest uruchomiony system operacyjny Windows i na komputerach z systemem Windows z programem PowerShell, ale nie mają włączonej komunikacji zdalnej programu PowerShell.
Możesz również użyć parametrów modelu CIM, aby pobrać moduły CIM z komputerów z włączoną obsługą komunikacji zdalnej programu PowerShell. Obejmuje to komputer lokalny. Podczas tworzenia sesji modelu CIM na komputerze lokalnym program PowerShell używa modelu DCOM zamiast usługi WMI do utworzenia sesji.