PowerShell 7 und Windows PowerShell. Tobias Weltner

PowerShell 7 und Windows PowerShell - Tobias Weltner


Скачать книгу
Show-Command

       Achtung

      PowerShell (genauer gesagt, das zugrunde liegende .NET Framework Core) unterstützt derzeit grafische Oberflächen nur im Windows-Betriebssystem. Betroffen von dieser Einschränkung sind alle Cmdlets mit dem Verb Show sowie generell alle Cmdlets, die grafische Elemente anzeigen, also zum Beispiel Out-GridView.

       Abbildung 2.3: Cmdlets per Dialogfeld suchen

       Achtung

      Solange das Dialogfeld geöffnet ist (siehe Abbildung 2.3), wartet die PowerShell-Konsole und akzeptiert keine Eingaben mehr. Die PowerShell-Konsole reagiert erst erneut auf Eingaben, wenn das Dialogfeld wieder geschlossen ist.

       Suchen

      Im Feld Name formulieren Sie Ihre Suche. Platzhalterzeichen (*) sind erlaubt, aber eine separate Suche nach Verb und Noun ist nicht vorgesehen. Sie müssen also kreativ sein: Wollen Sie alle Cmdlets sehen, die das Verb Get besitzen und etwas mit Drucken zu tun haben, geben Sie ein: Get-*print*. Die Groß- und Kleinschreibung spielt bei Befehlsnamen keine Rolle.

      Die Ausklappliste Module zeigt alle Module an, aus denen die Cmdlets stammen. Wählen Sie ein bestimmtes Modul aus, werden nur noch die Cmdlets aus diesem ausgewählten Modul angezeigt.

       Tipp

      Wenn Sie ein bestimmtes Modul in der Ausklappliste auswählen, leeren Sie außerdem das Feld Name. Andernfalls wäre die Ergebnisliste möglicherweise leer, wenn kein Cmdlet aus dem gewählten Modul Ihrem Suchkriterium in Name mehr entspricht.

       Befehlsaufruf konzipieren

      Das Dialogfeld kann auch gleich den kompletten Befehlsaufruf für Sie zusammenstellen. Dazu klicken Sie einen Befehl in der Befehlsliste an.

      Im Feld darunter erscheinen nun alle Parameter des Cmdlets (siehe Abbildung 2.4, gegebenenfalls müssen Sie vorher auf Details anzeigen klicken). Zwingend erforderliche Parameter sind mit einem Stern gekennzeichnet. Alle anderen Parameter sind optional (freiwillig).

      Bei Get-Printer sind zum Beispiel sämtliche Parameter optional, und sofern Sie überhaupt keinen Parameter angeben, liefert das Cmdlet kurzerhand alle Drucker.

      Wenn Sie oben rechts auf das blaue Symbol mit dem Fragezeichen klicken, öffnet sich die Hilfe, die das Cmdlet und alle seine Parameter erklärt (siehe Abbildung 2.4). Die Hilfe ist allerdings nur dann vollständig, wenn Sie, wie im letzten Kapitel beschrieben, alle Hilfedateien mit Update-Help aus dem Internet nachgerüstet haben.

      Geben Sie zum Beispiel in das Feld Name den Namen eines Druckers ein. Ob ein Parameter Platzhalterzeichen unterstützt, hängt vom jeweiligen Cmdlet ab. Get-Printer unterstützt sie, wie seine Hilfe verrät (siehe Abbildung 2.4), sodass *PDF* alle Drucker auswählen würde, in deren Name der Begriff »PDF« vorkommt.

       Abbildung 2.4: Die Beschreibung eines Cmdlets und seiner Parameter öffnen

       In Befehlsaufruf verwandeln

      Per Klick auf Kopieren werden Ihre Angaben in den Befehlsaufruf verwandelt und in die Zwischenablage kopiert, sodass Sie sie anderswo wieder einfügen können. Oder Sie klicken gleich auf Ausführen und fügen den Befehlsaufruf in die PowerShell-Konsole ein. Ausgeführt wird dieser dort aber erst, wenn Sie image drücken:

      PS> Get-Printer -Name *PDF*

      Name ComputerName Type DriverName PortName

      ---- ------------ ---- ---------- --------

      PrintPDFUnattended Local Microsoft Print To PDF C:\Users\tobia\AppDa...

      Microsoft Print to PDF Local Microsoft Print To PDF PORTPROMPT:

       Gemeinsamkeiten aller Cmdlets

      Show-Command ist ein guter Weg für Einsteiger, sich mit Cmdlets vertraut zu machen, denn das Dialogfeld »verbildlicht« die gemeinsamen Merkmale aller Cmdlets:

       Parameter: Dies sind die einzelnen Informationen, die ein Cmdlet entgegennehmen kann. Das Dialogfeld (siehe Abbildung 2.5) stellt die Parameter als Formularfelder dar. In der Befehlszeile steht später vor jedem Parameternamen ein Bindestrich.

       Argumente: Dies sind die konkreten Informationen, die Sie einem bestimmten Parameter zuweisen wollen. Im Dialogfeld sind die Argumente das, was Sie selbst in ein Textfeld eingeben. In der Befehlszeile steht Ihr Argument durch Leerzeichen getrennt hinter dem Parameternamen.

       Switch-Parameter: Manche Parameter benötigen keine Argumente von Ihnen. Es genügt, dass man sie angibt. Ein populäres Beispiel ist der Parameter -Force, den viele Cmdlets bereithalten, wenn Sie die Durchsetzung des Cmdlets erzwingen wollen.

       Abbildung 2.5: Cmdlet mit grafischem Dialogfeld vorbereiten und dann ausführen

      Benötigt ein Parameter kein Argument von Ihnen, nennt man ihn Switch (engl. für Schalter, weil er ähnlich wie ein Lichtschalter nur zwei Zustände kennt, also nur »eingeschaltet« (angegeben) oder »ausgeschaltet« (weggelassen) werden kann. Solche Parameter werden im Dialogfeld als Kontrollkästchen dargestellt (zum Beispiel -AsJob und -Full in Abbildung 2.5).

      Würden Sie zum Beispiel das Kästchen Full im Dialogfeld auswählen, erschiene später der Parameter -Full in Ihrer Befehlszeile, aber eben ohne ein Argument.

       Common Parameters: Welche Parameter ein Cmdlet jeweils unterstützt, ist ganz unterschiedlich und hängt vom jeweiligen Cmdlet ab. Einige Parameter werden von PowerShell allerdings immer und bei jedem Cmdlet hinzugefügt. Diese Parameter nennt man deshalb Common Parameters. Im Dialogfeld (siehe Abbildung 2.5) verbergen sie sich in der Ausklappliste Allgemeine Parameter.Der Parameter -ErrorAction legt zum Beispiel bei allen Cmdlets fest, was bei Fehlern passieren soll. Tragen Sie hier Ignore ein, werden alle Fehlermeldungen ignoriert und nicht angezeigt.

       Mit Autovervollständigung suchen

      Show-Command eignet sich indes tatsächlich nur für den absoluten Einstieg. Sie werden schnell feststellen, dass die direkte Texteingabe mit ein wenig Übung weitaus bequemer und schneller funktioniert, sofern Sie dabei die Autovervollständigungstaste image großzügig einsetzen:

      Diese


Скачать книгу