Windows PowerShell (eBook)
424 Seiten
O'Reilly Verlag
978-3-96010-672-2 (ISBN)
Erprobtes Praxiswissen für den Einstieg in Windows PowerShell
- Verständliche und praxisnahe Anleitungen vom international anerkannten PowerShell-Experten Dr. Tobias Weltner
- PowerShell-Grundlagen aus dem Bestseller »PowerShell 5« für Einsteiger zusammengefasst
- Ohne Vorwissen die mächtige Windows PowerShell Schritt für Schritt kennenlernen
PowerShell ist die Standard-Skriptsprache für die Windows-Automation und nach wie vor unverzichtbar für Administratoren und ambitionierte Windows-Anwender. Mit PowerShell lassen sich wiederkehrende Aufgaben automatisieren, Reports erstellen, Drucker einrichten, Daten sichern und alle Handgriffe erledigen, die mehr als einmal anfallen.
Ob Sie sich bereits PowerShell-Wissen angeeignet haben und nun eine gründliche Aufbereitung wünschen oder PowerShell ganz neu entdecken: Dieses verständlich geschriebene Praxisbuch erklärt umfassend und mit vielen Praxisbeispielen, wie Windows PowerShell funktioniert und Sie professionell damit arbeiten.
Das Themenspektrum reicht von PowerShell-Befehlen (Cmdlets) und Skripten bis hin zu PowerShell Pipeline, eigenen Befehlen, Fehlerhandling und Debugging sowie Remoting. Die Beispiele verwenden den Befehlssatz der Windows PowerShell.
Dr. Tobias Weltner ist seit 30 Jahren für Unternehmen rund um den Globus tätig, um komplexe IT-Prozesse zu automatisieren. Seine Erfahrung gibt er in Workshops, bei Projekten und auf Konferenzen weiter. Als erfahrener Didaktiker weiß er genau, wie man technische Zusammenhänge verständlich erklärt. Er ist Entwickler der PowerShell-Entwicklungsumgebung »ISESteroids«, hat 2016 die Fachkonferenz »psconf.eu« ins Leben gerufen und ist Mitglied der Microsoft Cmdlet Workinggroup, die den Befehlssatz der PowerShell weiterentwickelt. Tobias Weltner erhielt 22 MVP-Auszeichnungen der Firma Microsoft und zählt zu den bekanntesten PowerShell-Experten weltweit.
Dr. Tobias Weltner ist seit 30 Jahren für Unternehmen rund um den Globus tätig, um komplexe IT-Prozesse zu automatisieren. Seine Erfahrung gibt er in Workshops, bei Projekten und auf Konferenzen weiter. Als erfahrener Didaktiker weiß er genau, wie man technische Zusammenhänge verständlich erklärt. Er ist Entwickler der PowerShell-Entwicklungsumgebung »ISESteroids«, hat 2016 die Fachkonferenz »psconf.eu« ins Leben gerufen und ist Mitglied der Microsoft Cmdlet Workinggroup, die den Befehlssatz der PowerShell weiterentwickelt. Tobias Weltner erhielt 22 MVP-Auszeichnungen der Firma Microsoft und zählt zu den bekanntesten PowerShell-Experten weltweit.
Kapitel 2
Cmdlets – die PowerShell-Befehle
In diesem Kapitel:
Alles, was Sie über Cmdlets wissen müssen
Cmdlets für eine Aufgabe finden
Mit Parametern Wünsche formulieren
Neue Cmdlets aus Modulen nachladen
Ausführlich werden in diesem Kapitel die folgenden Aspekte erläutert:
- Cmdlets: PowerShell-Befehle werden »Cmdlets« (sprich: »Commandlets«) genannt. Sie können nur innerhalb der PowerShell ausgeführt werden. Ihr Name besteht immer aus einem Verb, einem Bindestrich und einem Nomen. Mit Get-Command und Show-Command lassen sich Cmdlets suchen und finden. Welche Cmdlets zur Verfügung stehen, hängt nicht nur von der eingesetzten PowerShell-Version ab, sondern auch vom Betriebssystem und der installierten zusätzlichen Softwareausstattung.
- Parameter: Alle Informationen, die ein Cmdlet vom Anwender benötigt, erhält es über Parameter. Parameter beginnen stets mit einem Bindestrich. Gibt man im ISE-Editor hinter einem Cmdlet ein Leerzeichen und dann einen Bindestrich an, öffnet sich eine Liste der Parameter. Parameter können optional oder zwingend sein. Wird ein zwingender Parameter nicht angegeben, fragt PowerShell nach.
- Aliase: Cmdlets können über Aliasnamen angesprochen werden. So bildet PowerShell Befehle anderer Shells ab (beispielsweise dir oder ls). Die Liste der Aliasnamen erhält man mit Get-Alias.
- Hilfe: Klickt man in der ISE auf ein Cmdlet und drückt dann , öffnet sich ein Hilfefenster und erklärt die Funktionsweise des Cmdlets. Dahinter steckt das Cmdlet Get-Help, dessen Aufruf man nach Druck auf in der Konsole der ISE sieht. Über diesen Befehl kann die Hilfe auch in der PowerShell-Konsole geöffnet werden.
- Fehlermeldungen: Wie sich ein Cmdlet im Fehlerfall verhalten soll, bestimmt der Parameter -ErrorAction. Er gehört zu den »Common Parameters«, die jedes Cmdlet unterstützt.
PowerShell ist zwar eine Automationssprache, mit der man beliebige Aufgaben beschreiben und lösen kann, damit Sie aber nicht jedes Mal von vorn beginnen müssen, enthält PowerShell bereits Tausende fix und fertiger Problemlösungen. Diese Problemlösungen werden »Cmdlets« genannt (sprich: »Commandlet«), und in diesem Kapitel geht es ausschließlich darum, wie man mit diesen Cmdlets umgeht.
Im Verlauf der nächsten Kapitel erfahren Sie dann Schritt für Schritt, wie man auch andere Probleme lösen kann, für die es (noch) keine fertigen Cmdlets gibt, und sogar, wie man völlig eigene neue PowerShell-Befehle hinzufügen kann, die dann genau das tun, was Sie gerade brauchen. Doch bereits die mitgelieferten Cmdlets sind ein spannendes Gebiet mit vielfältigen Einsatzmöglichkeiten, wie Sie gleich an vielen Praxisbeispielen sehen werden.
Alles, was Sie über Cmdlets wissen müssen
Die PowerShell-Befehle werden »Cmdlet« genannt. Es sind eigenständige, fertige Problemlösungen, die aber auf PowerShell aufbauen. Deshalb funktionieren Cmdlets nur innerhalb der PowerShell, und deshalb heißen diese Befehle eben auch Cmdlet und nicht Command: So wie es ein Treibstoff sparendes »Winglet« beim Ferienflieger nicht ohne dazugehörenden »Wing« gibt, an dem es befestigt wird, kann auch ein Cmdlet nicht außerhalb der PowerShell ausgeführt werden – daher also das »let« am Ende des Namens.
Ein Cmdlet enthält ausschließlich diejenige Fachkompetenz, die zur Lösung einer bestimmten Aufgabe nötig ist. Um all den allgemeinen übrigen Rest – das Ein- und Ausgeben von Informationen, Hilfestellung, die Übergabe von Parametern oder auch die Behandlung von Fehlern – kümmert sich ein Cmdlet nicht. Diese Dinge werden für alle Cmdlets zentral von der PowerShell bereitgestellt.
Das macht die Entwicklung von Cmdlets besonders einfach, und auch Sie als Nutzer dürfen sich freuen, denn die Bedienung der Cmdlets ist sehr konsistent. Kennen Sie sich mit einem Cmdlet aus, können Sie dieses Grundwissen auf alle anderen Cmdlets übertragen.
- Namensgebung: Alle Cmdlets tragen einen Doppelnamen. Der erste Namensteil ist ein Verb, also eine Tätigkeit wie zum Beispiel Get. Dieses Verb verrät, was das Cmdlet tun wird. Der zweite Teil ist ein Substantiv (Nomen), also ein Tätigkeitsbereich wie zum Beispiel Service. Er verrät, worauf sich das Cmdlet auswirkt, und ist sozusagen der Familienname. Beide Namensteile sind üblicherweise in Englisch und im Singular (Einzahl).
- Parameter: Hinter dem Cmdlet-Namen können zusätzliche Informationen folgen, mit denen Sie dem Cmdlet dann genauer erklären, was es genau für Sie erledigen soll. Diese Zusatzinformationen werden »Argumente« genannt und vom Cmdlet über einen passenden »Parameter« erfragt. Die meisten Parameter sind optional, also freiwillig, manche aber auch zwingend. Ohne solche Parameter kann das Cmdlet seine Arbeit nicht beginnen. Parameter sind der einzige Weg, wie Sie die Funktionsweise eines Cmdlets steuern und anpassen.
- Hilfe: Das PowerShell-Hilfesystem kann für alle Cmdlets ausführliche Hilfestellung liefern, die erklärt, was das Cmdlet genau für Arbeiten durchführt, welche Parameter es unterstützt und wofür die Parameter gut sind. Häufig enthält die Hilfe auch konkrete Codebeispiele, mit denen man experimentieren kann und die als Ausgangspunkt für eigene Aufrufe dienen können. Dazu müssen die ergänzenden Hilfeinformationen aber zuerst, wie im letzten Kapitel beschrieben, mit Update-Help aus dem Internet heruntergeladen worden sein. Steht keine Hilfe für ein Cmdlet zur Verfügung, zeigt das PowerShell-Hilfesystem zumindest die verfügbaren Parameter und die genaue »Syntax« des Cmdlet-Aufrufs an – die formale Beschreibung, wie das Cmdlet aufgerufen werden kann.
- Autovervollständigung: PowerShell unterstützt Sie mit den Autovervollständigungsfunktionen aus dem letzten Kapitel. Auf Wunsch vervollständigt PowerShell Cmdlet-Namen, die Parameternamen eines Cmdlets und in einigen Fällen sogar die Argumente, die Sie einem Parameter zuweisen können.
Hinweis
Ausnahmslos jedes Cmdlet stammt aus einem sogenannten »Modul«. Einige Module bringt PowerShell selbst mit, und andere Module werden von Betriebssystemen oder installierter Software hinzugefügt. Das erklärt, warum es bei Windows 8 mehr Cmdlets gibt als bei Windows 7 und bei Windows 10 wiederum mehr: Hier fügen die Betriebssysteme jeweils zusätzliche Module mit weiteren Cmdlets hinzu. Je moderner Ihr Windows ist, desto umfassender ist seine PowerShell-Unterstützung. Module sind allerdings im Augenblick nicht wichtig. Sie lesen später mehr darüber. Aktuell genügt es vollauf, sich mit den Cmdlets zu beschäftigen, die bereits vorhanden sind.
Cmdlets für eine Aufgabe finden
Cmdlets nehmen Ihnen Arbeit ab, denn der Autor des Cmdlets hat bereits für Sie eine Lösung für eine bestimmte Aufgabe programmiert. Ohne Cmdlets müssten Sie das selbst tun und zum Programmierer werden. Einen guten PowerShell-Skripter zeichnet also seine Fähigkeit aus, die notwendigen Befehle schnell zu finden und wiederzuverwenden, anstatt unnötig das Rad jeweils neu zu erfinden und selbst umfangreiche Skripte zu schreiben.
Damit die Suche nach Cmdlets kurzweilig für Sie wird, werden Sie sofort praktische Probleme lösen. Sie erhalten jeweils eine Aufgabe, die mit PowerShell erledigt werden soll. Danach suchen (und finden) Sie auf verschiedenen Wegen das passende Cmdlet und setzen es ein.
Suche nach Tätigkeit oder Tätigkeitsbereich
»Ein Computer stürzt häufiger ab. Um die Ursache zu ergründen, sollen die letzten 15 Fehlerereignisse aus dem Ereignisprotokoll des Systems ausgelesen werden.«
Um diese Aufgabe zu lösen, benötigen Sie ein Cmdlet, das Einträge aus einem Ereignisprotokoll lesen kann. Um ein solches zu finden, erinnern Sie sich an die Namensgebung aller Cmdlets: Ihr Name besteht jeweils aus einem Verb (einer Tätigkeit) und einem Substantiv (Nomen, Tätigkeitsbereich).
Überlegen Sie also zuerst, was das Cmdlet eigentlich leisten soll. Es soll Ihnen Informationen liefern. Das Verb hierfür lautet »Get«. Anfangs wird Ihnen das noch etwas willkürlich vorkommen (warum heißt es zum Beispiel nicht »List« oder »Dump«?),...
Erscheint lt. Verlag | 8.12.2022 |
---|---|
Verlagsort | Heidelberg |
Sprache | deutsch |
Themenwelt | Mathematik / Informatik ► Informatik ► Betriebssysteme / Server |
Schlagworte | Administration • CmdLets • Kommandozeile • PowerShell Befehle • PowerShellGet • PowerShell Skripte • Reguläre Ausdrücke • Skripte • Windows Automation • Windows Server |
ISBN-10 | 3-96010-672-6 / 3960106726 |
ISBN-13 | 978-3-96010-672-2 / 9783960106722 |
Haben Sie eine Frage zum Produkt? |
![EPUB](/img/icon_epub_big.jpg)
Größe: 7,9 MB
DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasserzeichen und ist damit für Sie personalisiert. Bei einer missbräuchlichen Weitergabe des eBooks an Dritte ist eine Rückverfolgung an die Quelle möglich.
Dateiformat: EPUB (Electronic Publication)
EPUB ist ein offener Standard für eBooks und eignet sich besonders zur Darstellung von Belletristik und Sachbüchern. Der Fließtext wird dynamisch an die Display- und Schriftgröße angepasst. Auch für mobile Lesegeräte ist EPUB daher gut geeignet.
Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür die kostenlose Software Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür eine kostenlose App.
Geräteliste und zusätzliche Hinweise
Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.
aus dem Bereich