Udostępnij za pośrednictwem


o_Aktualizowalna_Pomoc

Krótki opis

Opisuje aktualizowalny system pomocy w programie PowerShell.

Długi opis

Program PowerShell oferuje kilka różnych sposobów uzyskiwania dostępu do najbardziej up-totematów pomocy dotyczących poleceń cmdlet i pojęć programu PowerShell.

System Pomocy z możliwością aktualizacji, wprowadzony w programie PowerShell 3.0, został zaprojektowany w celu zapewnienia, że zawsze masz najnowsze tematy pomocy na komputerze lokalnym, aby można je było odczytać w wierszu polecenia. Ułatwia pobieranie i instalowanie plików pomocy oraz aktualizowanie ich za każdym razem, gdy nowsze pliki pomocy staną się dostępne.

Aby zapewnić zaktualizowaną pomoc dla wielu komputerów w przedsiębiorstwie i dla komputerów, które nie mają dostępu do Internetu, funkcja Updatable Help umożliwia pobranie plików pomocy do katalogu systemu plików lub udziału plików, a następnie zainstalowanie plików pomocy z udziału plików.

W programie PowerShell 4.0 właściwość HelpInfoUri jest zachowywana podczas zdalnego zarządzania Windows PowerShell, co pozwala Save-Help działać dla modułów zainstalowanych na komputerze zdalnym, ale niekoniecznie muszą być zainstalowane na komputerze lokalnym. Można zapisać obiekt PSModuleInfo na dysku lub nośniku wymiennym (takim jak dysk USB), uruchamiając Export-Clixml na komputerze, który nie ma dostępu do Internetu, importując obiekt PSModuleInfo na komputerze z dostępem do Internetu, a następnie uruchamiając Save-Help na obiekcie PSModuleInfo. Zapisaną pomoc można skopiować na zdalny, odłączony komputer przy użyciu nośnika wymiennego, a następnie zainstalować, uruchamiając Update-Help. Te ulepszenia funkcji Save-Help umożliwiają zainstalowanie pomocy na komputerach, które nie mają dostępu do sieci. Aby zapoznać się z przykładem sposobu używania nowej funkcjonalności Save-Help, zobacz Jak zaktualizować pomoc z folderu współdzielonego w tym temacie.

Pomoc aktualizowalna obsługuje również dostęp online do najnowszych tematów pomocy i podstawową pomoc dotyczącą poleceń cmdlet, nawet jeśli na komputerze nie ma żadnych plików pomocy.

Program PowerShell nie zawiera plików Pomocy. Za pomocą funkcji Updatable Help można zainstalować pliki pomocy dla wszystkich poleceń, które są domyślnie zawarte w programie PowerShell i dla wszystkich modułów systemu Windows.

Polecenia cmdlet pomocy z możliwością aktualizacji

  • Update-Help: Pobiera najnowsze pliki pomocy z internetu lub zasobu sieciowego i instaluje je na komputerze lokalnym.

  • Save-Help: pobiera najnowsze pliki pomocy z Internetu i zapisuje je w katalogu systemu plików lub udziale plików. Aby zainstalować pliki pomocy na komputerach, użyj Update-Help.

  • Get-Help: wyświetla tematy pomocy w wierszu polecenia. Pobiera pomoc z plików pomocy na komputerze. Wyświetla automatycznie wygenerowaną pomoc dla poleceń cmdlet i funkcji, które nie posiadają własnych plików pomocy. Otwiera tematy pomocy online dotyczące cmdlet, funkcji, skryptów i przepływów pracy w domyślnej przeglądarce internetowej.

Pomoc wygenerowana automatycznie: Pomoc bez plików pomocy

Jeśli nie masz pliku pomocy dla polecenia cmdlet, funkcji lub przepływu pracy na komputerze, polecenie cmdlet Get-Help wyświetli automatycznie wygenerowaną pomoc i wyświetli monit o pobranie plików pomocy lub odczytanie ich w trybie online.

Automatycznie wygenerowana pomoc zawiera składnię i aliasy oraz uwagi, które wyjaśniają, jak używać poleceń cmdlet Pomocy z możliwością aktualizowania oraz uzyskiwać dostęp do tematów pomocy online.

Na przykład następujące polecenie pobiera podstawową pomoc dla polecenia cmdlet Get-Culture. Wyjście pokazuje wyświetlenie Get-Help, gdy na komputerze nie ma żadnych plików pomocy.

Get-Help Get-Culture
NAME
    Get-Culture

SYNTAX
    Get-Culture [<CommonParameters>]

ALIASES
    None

REMARKS
    To get the latest Help content including descriptions and examples
    type: Update-Help.

Pliki pomocy dla modułów

Najmniejszą jednostką pomocy z możliwością aktualizowania jest pomoc dla modułu. Pomoc dotycząca modułu obejmuje wsparcie dla wszystkich cmdletów, funkcji, przepływów pracy, dostawców, skryptów i pojęć w module. Możesz zaktualizować pomoc dotyczącą wszystkich modułów zainstalowanych na komputerze, nawet jeśli nie zostaną zaimportowane do bieżącej sesji.

Możesz zaktualizować pomoc dotyczącą całego modułu, ale nie można zaktualizować pomocy dla poszczególnych poleceń cmdlet.

Aby znaleźć moduł zawierający określone polecenie cmdlet, użyj następującego formatu polecenia:

(Get-Command <cmdlet-name>).ModuleName

Aby na przykład znaleźć moduł zawierający polecenie cmdlet Set-ExecutionPolicy, wpisz:

(Get-Command Set-ExecutionPolicy).ModuleName

Aby zaktualizować pomoc dotyczącą określonego modułu, wpisz:

Update-Help -Module <ModuleName>

Aby na przykład zaktualizować pomoc dotyczącą modułu zawierającego polecenie cmdlet Set-ExecutionPolicy, wpisz:

Update-Help -Module Microsoft.PowerShell.Security

Uprawnienia do aktualizowalnej pomocy

Aby zaktualizować pomoc dotyczącą modułów w katalogu $PSHOME/Modules, musisz być członkiem grupy Administratorzy na komputerze.

Jeśli nie jesteś członkiem grupy Administratorzy, nie możesz zaktualizować pomocy dotyczącej tych modułów; ale jeśli masz dostęp do Internetu, możesz wyświetlić pomoc online.

Aktualizowanie pomocy dotyczącej modułów w katalogu $HOME/Documents/PowerShell/Modules lub modułów w innych podkatalogach katalogu $HOME nie wymaga specjalnych uprawnień.

Polecenia cmdlet Update-Help i Save-Help mają parametr UseDefaultCredentials, który udostępnia jawne poświadczenia bieżącego użytkownika. Ten parametr jest przeznaczony do uzyskiwania dostępu do bezpiecznych lokalizacji internetowych.

Polecenia cmdlet Update-Help i Save-Help mają również parametr Credential, który umożliwia uruchamianie polecenia na zdalnym komputerze i uzyskiwanie dostępu do zasobu udostępnionego na trzecim komputerze. Parametr Credential jest prawidłowy tylko w przypadku użycia parametrów SourcePath lub LiteralPath z Update-Help oraz parametrów DestinationPath lub LiteralPath z Save-Help.

Jak zainstalować i zaktualizować pliki pomocy

Aby pobrać i zainstalować pliki pomocy po raz pierwszy lub zaktualizować pliki pomocy na komputerze, użyj polecenia cmdlet Update-Help.

Polecenie cmdlet Update-Help wykonuje całą ciężką pracę, w tym między innymi następujące zadania.

  • Określa, które moduły obsługują pomoc z możliwością aktualizacji.
  • Znajduje lokalizację internetową, w której każdy moduł przechowuje jego pliki Pomocy z możliwością aktualizacji.
  • Porównuje pliki pomocy dla każdego modułu na komputerze z najnowszymi plikami pomocy dostępnymi dla każdego modułu.
  • Pobiera nowe pliki z Internetu.
  • Odpakowuje pakiet plików pomocy.
  • Sprawdza, czy pliki są prawidłowymi plikami pomocy.
  • Instaluje pliki pomocy w podkatalogu specyficznym dla języka katalogu modułu.

Aby uzyskać dostęp do nowych tematów pomocy, użyj polecenia cmdlet Get-Help. Nie musisz ponownie uruchamiać programu PowerShell.

Aby zainstalować lub zaktualizować pomoc dotyczącą wszystkich modułów na komputerze obsługującym pomoc z możliwością aktualizacji, wpisz:

Update-Help

Aby zaktualizować pomoc dotyczącą określonych modułów, dodaj parametr modułuUpdate-Help. Symbole wieloznaczne są dozwolone w nazwie modułu.

Aby na przykład zaktualizować pomoc dotyczącą modułu ServerManager, wpisz:

Update-Help -Module ServerManager

Bez parametrów Update-Help aktualizuje pomoc dla wszystkich modułów w sesji i dla wszystkich zainstalowanych modułów, które obsługują aktualizowalną pomoc. Aby można je było uwzględnić, moduły muszą być zainstalowane w katalogach wymienionych w wartości zmiennej środowiskowej PSModulePath. Są to również moduły zwracane przez polecenie Get-Module -ListAvailable.

Jeśli wartość parametru Module jest * (wszystkie), Update-Help próbuje zaktualizować pomoc dla wszystkich zainstalowanych modułów, w tym modułów, które nie obsługują aktualizowalnej pomocy. To polecenie zwykle generuje wiele błędów, ponieważ polecenie cmdlet napotyka moduły, które nie obsługują aktualizowalnej pomocy.

Jak zaktualizować pomoc z udziału plików

Aby obsługiwać komputery, które nie są połączone z Internetem, lub kontrolować lub usprawnić aktualizowanie w przedsiębiorstwie, użyj polecenia cmdlet Save-Help. Polecenie cmdlet Save-Help pobiera pliki pomocy z Internetu i zapisuje je w określonym katalogu systemu plików.

Save-Help porównuje pliki pomocy w określonym katalogu z najnowszymi plikami pomocy dostępnymi dla każdego modułu. Jeśli katalog nie ma plików pomocy lub nowsze pliki pomocy są dostępne dla modułu, polecenie cmdlet Save-Help pobiera nowe pliki z Internetu. Jednak nie rozpakowuje ani nie instaluje plików pomocy.

Aby zainstalować lub zaktualizować pliki pomocy na komputerze z plików pomocy zapisanych w katalogu systemu plików, użyj parametru SourcePath polecenia cmdlet Update-Help. Polecenie cmdlet Update-Help identyfikuje najnowsze pliki pomocy, odpakowuje je i weryfikuje oraz instaluje je w podkatalogach specyficznych dla języka katalogów modułów.

Aby na przykład zapisać pomoc dla wszystkich zainstalowanych modułów w katalogu \\Server\Share, wpisz:

Save-Help -DestinationPath \\Server\Share

Następnie, aby zaktualizować pomoc z katalogu \\Server\Share, wpisz:

Update-Help -SourcePath \\Server\Share

W poniższych przykładach pokazano użycie Save-Help w celu zapisania pomocy dotyczącej modułów, które nie są zainstalowane na komputerze lokalnym. W tym przykładzie administrator uruchamia Save-Help, aby zapisać pomoc dla modułu DhcpServer z komputera klienckiego połączonego z Internetem bez instalowania modułu DhcpServer lub roli serwera DHCP na komputerze lokalnym.

Opcja 1. Uruchom Invoke-Command, aby uzyskać obiekt PSModuleInfo dla modułu zdalnego, zapisać go w zmiennej, $m, a następnie uruchomić Save-Help na obiekcie PSModuleInfo, określając zmienną $m jako nazwę modułu.

$invokeCommandSplat = @{
    ComputerName = 'RemoteServer'
    ScriptBlock = { Get-Module -Name DhcpServer -ListAvailable }
}
$m = Invoke-Command @invokeCommandSplat
Save-Help -Module $m -DestinationPath C:\SavedHelp

Opcja 2. Otwórz plik PSSession przeznaczony dla komputera z uruchomionym modułem serwera DHCP, aby uzyskać obiekt PSModule Info dla modułu, zapisz go w zmiennej $m, a następnie uruchom Save-Help na obiekcie zapisanym w zmiennej $m.

$s = New-PSSession -ComputerName RemoteServer
$m = Get-Module -PSSession $s -Name DhcpServer -ListAvailable
Save-Help -Module $m -DestinationPath C:\SavedHelp

Opcja 3. Otwórz sesję modelu CIM przeznaczoną dla komputera z uruchomionym modułem serwera DHCP, aby uzyskać obiekt PSModule Info dla modułu, zapisz go w zmiennej $m, a następnie uruchom Save-Help na obiekcie zapisanym w zmiennej $m.

$c = New-CimSession -ComputerName RemoteServer
$m = Get-Module -CimSession $c -Name DhcpServer -ListAvailable
Save-Help -Module $m -DestinationPath C:\SavedHelp

W poniższym przykładzie administrator instaluje pomoc dla modułu serwera DHCP na komputerze, który nie ma dostępu do sieci.

Najpierw uruchom Export-Clixml, aby wyeksportować obiekt PSModuleInfo do folderu udostępnionego lub nośnika wymiennego.

$m = Get-Module -Name DhcpServer -ListAvailable
Export-Clixml -Path E:\UsbDrive\DhcpModule.xml -InputObject $m

Następnie zaimportuj nośnik wymienny do komputera z dostępem do Internetu, a następnie zaimportuj obiekt PSModuleInfo za pomocą Import-Clixml. Uruchom Save-Help, aby zapisać pomoc dla zaimportowanego modułu DhcpServer , obiektu PSModuleInfo.

$deserialized_m = Import-Clixml E:\UsbDrive\DhcpModule.xml
Save-Help -Module $deserialized_m -DestinationPath E:\UsbDrive\SavedHelp

Na koniec przetransportuj nośnik wymienny z powrotem do komputera, który nie ma dostępu do sieci, a następnie zainstaluj pomoc, uruchamiając Update-Help.

Update-Help -Module DhcpServer -SourcePath E:\UsbDrive\SavedHelp

Bez parametrów, Save-Help pobiera pomoc dla wszystkich modułów w sesji i dla wszystkich zainstalowanych modułów, które obsługują aktualizowalną pomoc. Aby można je było uwzględnić, moduły muszą być zainstalowane w katalogach wymienionych w wartości zmiennej środowiskowej $Env:PSModulePath na komputerze lokalnym lub na komputerze zdalnym, dla którego chcesz zapisać pomoc. Są to również moduły, które są zwracane przez uruchomienie polecenia Get-Help -ListAvailable.

Jak zaktualizować pliki pomocy w różnych językach

Domyślnie cmdlety Update-Help i Save-Help pobierają pomoc w języku i kulturze interfejsu użytkownika ustawionym dla systemu Windows na komputerze lokalnym. Jeśli pliki pomocy dla określonych modułów nie są dostępne w lokalnych ustawieniach interfejsu użytkownika, Update-Help i Save-Help korzystają z zasad rezerwacji językowej Windows, aby znaleźć najlepszy obsługiwany język.

Można jednak użyć parametrów UICulture poleceń cmdlet Update-Help i Save-Help, aby pobrać i zainstalować pliki pomocy w dowolnych kulturach interfejsu użytkownika, w których są dostępne.

Aby na przykład zapisać najnowsze pliki pomocy dla wszystkich modułów w sesji w języku japońskim (ja-JP) i francuskim (fr-FR), wpisz:

Save-Help -Path \Server\Share -UICulture ja-JP, fr-FR

Jeśli pliki pomocy dla modułów nie są dostępne w określonych językach, Update-Help i Save-Help polecenia cmdlet zwracają komunikat o błędzie zawierający listę języków, w których jest dostępna pomoc dla każdego modułu, dzięki czemu można wybrać alternatywę, która najlepiej spełnia Twoje potrzeby.

Notatka

Obecnie zawartość Pomocy z możliwością aktualizacji jest publikowana tylko w języku angielskim (en-US).

Jak używać pomocy online

Jeśli nie możesz lub nie chcesz aktualizować plików pomocy na komputerze lokalnym, nadal możesz uzyskać najnowsze pliki pomocy w trybie online.

Aby otworzyć temat pomocy online dla dowolnego polecenia cmdlet lub funkcji, użyj parametru Online dla polecenia cmdlet Get-Help.

Na przykład następujące polecenie otwiera temat pomocy online dla cmdletu Get-Job w domyślnej przeglądarce internetowej.

Get-Help Get-Job -Online

Aby uzyskać pomoc online dotyczącą skryptu, użyj parametru Online i pełnej ścieżki do skryptu.

Parametr Online nie działa w przypadku tematów Informacje. Aby zapoznać się z tematami dotyczącymi programu PowerShell, w tym tematami pomocy dotyczącymi języka programu PowerShell, zobacz temat Tematy dotyczące programu PowerShell.

Jak zminimalizować lub uniemożliwić pobieranie z Internetu

Aby zminimalizować pobieranie danych z internetu i udostępnić Pomoc z możliwością aktualizacji użytkownikom, którzy nie są połączeni z internetem, użyj polecenia cmdlet Save-Help. Pobierz pomoc z Internetu i zapisz ją w udziale sieciowym. Następnie utwórz ustawienia zasad grupy lub zaplanowane zadanie, które uruchamia polecenie Update-Help na wszystkich komputerach. Ustaw wartość parametru cmdletu Update-Help na udział sieciowy.

Aby uniemożliwić użytkownikom z dostępem do internetu pobieranie Pomocy Aktualizacyjnej z internetu, użyj ustawienia zasad grupy Ustaw domyślną ścieżkę źródłową dla Update-Help.

To ustawienie zasad grupy niejawnie dodaje parametr SourcePath z wybraną lokalizacją systemu plików do każdego polecenia Update-Help na każdym komputerze, którego dotyczy problem. Użytkownicy mogą jawnie użyć parametru SourcePath, aby określić inną lokalizację systemu plików, ale nie mogą wykluczyć parametru SourcePath i pobrać pomoc z Internetu.

Notatka

Ustawienie zasad grupy Ustaw domyślną ścieżkę źródła Update-Help występuje w obszarze Konfiguracja komputera i Konfiguracja użytkownika. Jednak skuteczne jest tylko ustawienie zasad w Konfiguracja komputera. Ustawienie zasad w obszarze Konfiguracja użytkownika jest ignorowane.

Więcej informacji znajdziesz w about_Group_Policy_Settings.

Jak zaktualizować pomoc dotyczącą modułów innych niż standardowe

Aby zaktualizować lub zapisać pomoc dla modułu, który nie jest zwracany przez parametr ListAvailable polecenia cmdlet Get-Module, zaimportuj moduł do bieżącej sesji przed uruchomieniem Update-Help lub Save-Help polecenia. Na komputerze zdalnym przed uruchomieniem polecenia zaimportuj Save-Help moduł do bieżącej sesji lub Invoke-Command scriptblock, który jest połączony z komputerem zdalnym.

Gdy moduł jest w bieżącej sesji, uruchom polecenia cmdlet Update-Help lub Save-Help bez parametrów lub użyj parametru Module, aby określić nazwę modułu.

Parametry Module poleceń cmdletów Update-Help i Save-Help akceptują tylko nazwę modułu. Nie akceptują ścieżki do pliku modułu.

Ta technika służy do aktualizowania lub zapisywania pomocy dla dowolnego modułu, który nie jest zwracany przez parametr ListAvailable polecenia cmdlet Get-Module, takiego jak moduł zainstalowany w lokalizacji, która nie znajduje się w zmiennej środowiskowej $Env:PSModulePath lub modułu, który nie jest poprawnie sformułowany (katalog modułu nie zawiera co najmniej jednego pliku, którego nazwa podstawowa jest taka sama jak nazwa katalogu).

Jak obsługiwać pomoc z możliwością aktualizowania

Jeśli tworzysz moduł, możesz obsługiwać pomoc online i aktualizowaną pomoc dla swoich modułów. Aby uzyskać więcej informacji, zobacz Wsparcie aktualizowalnej pomocy i Wsparcie pomocy online.

Aktualizowalna pomoc nie jest dostępna dla przystawek programu PowerShell ani pomocy opartej na komentarzach.

Uwagi

Polecenia cmdlet Update-Help i Save-Help nie są obsługiwane w środowisku preinstalacji systemu Windows (Windows PE).

Zobacz także

  • Uzyskaj pomoc
  • Zapisz-Pomoc
  • Update-Help