Название | PowerShell 7 und Windows PowerShell |
---|---|
Автор произведения | Tobias Weltner |
Жанр | Математика |
Серия | |
Издательство | Математика |
Год выпуска | 0 |
isbn | 9783960104803 |
>> Das geht so lange, bis ich die Lust verliere."
>>
Hallo
Dies ist mein kleines Tagebuch.
Ich schreibe jetzt einen mehrseitigen Text.
Das geht so lange, bis ich die Lust verliere.
Erst wenn Sie das Abschlusszeichen eingeben (und dann noch zweimal
PowerShell-Hilfe aus dem Internet nachladen
PowerShell und seine Cmdlets sind gut dokumentiert, allerdings müssen die Hilfetexte für PowerShell (einmalig) mit Update-Help aus dem Internet nachgeladen werden.
Leider speichert Windows PowerShell seine Hilfedateien im Windows-Ordner, und der darf nur von Administratoren geändert werden. Deshalb kann die PowerShell-Hilfe nur aktualisiert werden, wenn Sie den folgenden Befehl mit vollen Administratorrechten ausführen (und über eine Internetverbindung verfügen):
PS> Update-Help -UICulture En-US -Force
Bei PowerShell dagegen unterstützt Update-Help neuerdings den Parameter -Scope, mit dem Sie festlegen, ob die Hilfe für alle Anwender (mit Administratorrechten) oder nur für den aktuellen Anwender (ohne Administratorrechte) installiert werden soll:
PS> Update-Help -UICulture en-us -Force -Scope CurrentUser
Achtung
Windows PowerShell und PowerShell speichern die Hilfedateien an unterschiedlichen Orten, sodass Sie den Befehl Update-Help in beiden PowerShell-Konsolen ausführen müssen, wenn Sie Windows Power-Shell und PowerShell parallel verwenden.
Es ist übrigens völlig normal, wenn Update-Help am Schluss eine rote Fehlermeldung ausgibt. Üblicherweise beschwert sich die Meldung bloß darüber, dass für einige (wenige) PowerShell-Module keine Hilfe gefunden wurde. Das ist normal.
Auch wenn Sie noch nicht wissen, was Module eigentlich sind: Es gibt eine Menge davon. Wenn eine Handvoll Module keine Hilfe anbieten, ist das nicht schlimm.
PS> (Get-Module -ListAvailable).Count
97
Ab sofort erhalten Sie mit Get-Help ausführliche Hilfestellung zu PowerShell-Befehlen. Ohne Update-Help hätte die Hilfe keine Beispiele und Beschreibungen enthalten:
PS> Get-Help -Name Get-Service -ShowWindow
Abbildung 1.14: Hilfe zu PowerShell-Befehlen in einem Extrafenster anzeigen
Achtung
Grafische Oberflächen (wie das Hilfefenster in Abbildung 1.14) stehen derzeit lediglich in Windows zur Verfügung. In anderen Betriebssystemen wie z. B. Linux funktionieren solche Befehle nur eingeschränkt oder gar nicht.
Rufen Sie hier beispielsweise den Befehl Get-Help mit dem Parameter -Full anstelle von -ShowWindow auf. Die Hilfe erscheint dann direkt in der Konsole.
Tipp
Falls Sie Schwierigkeiten mit der lokalen Hilfe haben, lassen Sie sich die Hilfe kurzerhand online im Browser anzeigen – dort sieht sie meist ohnehin schicker und übersichtlicher formatiert aus. Nutzen Sie dazu den Parameter -Online:
PS> Get-Help -Name Get-Service -Online
In Ihrem Browser öffnet sich nun die Hilfe, die links verwandte Befehle und rechts die Abschnitte der Hilfe anzeigt, zum Beispiel per Klick auf Examples die Beispiele.
Abbildung 1.15: Onlinehilfe für PowerShell-Befehle
Ob eine Onlinehilfe für einen Befehl zur Verfügung steht, bestimmt ausschließlich sein Autor. Microsoft hat alle seine PowerShell-Befehle damit ausgestattet, aber einen gesetzlichen Anspruch darauf gibt es nicht. Möchten Sie automatisch immer in einer PowerShell-Sitzung die Onlinehilfe nutzen, ohne jedes Mal den Parameter -Online anzugeben, führen Sie diese Zeile aus:
$PSDefaultParameterValues['Get-Help:Online'] = $true
Sie sorgt dafür, dass der Befehl Get-Help (der auch hinter dem Parameter -? steckt) den Parameter -Online künftig immer als Vorgabewert verwendet – jedenfalls so lange, bis Sie die PowerShell-Sitzung wieder schließen.
Skriptausführung erlauben
Interaktive Befehle dürfen Sie in PowerShell jederzeit ausführen. Skripte, also Dateien mit der Erweiterung .ps1, sind anfangs allerdings verboten.
Das ist natürlich Unsinn, weil sich so PowerShell kaum nutzen lässt, und Sie müssen diese Sperre unbedingt sofort aufheben. Selbst wenn Sie gar nicht planen, eigene Skripte zu schreiben, nutzen viele PowerShell-Befehlserweiterungen intern Skripte und funktionieren nicht, solange die Skriptausführung verboten ist.
Ob Skripte erlaubt sind, bestimmt die sogenannte ExecutionPolicy. Set-ExecutionPolicy kann die Einstellungen ändern. Der folgende Befehl erlaubt dem aktuellen Benutzer, künftig lokale Skripte auszuführen. Skripte, die aus dem Internet heruntergeladen wurden, bleiben allerdings gesperrt:
PS> Set-ExecutionPolicy –Scope CurrentUser –ExecutionPolicy RemoteSigned –Force
Die gewählte Einstellung RemoteSigned ist zugegebenermaßen alles andere als intuitiv, denn was haben »Remote« und »Signed« miteinander zu tun? Tabelle 1.1 erklärt die möglichen Einstellungen deshalb etwas genauer.
Einstellung | Bedeutung |
RemoteSigned |
Lokale Skripte sind erlaubt. Skripte, die aus dem Internet heruntergeladen wurden oder auf Computern lagern, die nicht zur Domäne gehören, sind verboten. Sie können nur durch eine gültige digitale Signatur am Ende des
|