1 / 23

Windows PowerShell

Windows PowerShell. Seminar Internet Technologien. Mario Richter. Inhalt. Motivation Entwicklung Kern: Cmdlets PowerShell Erweiterbarkeit Beispiele PowerShell Scripting Language (PLS) Ausblick. Motivation. Entwicklung einer Alternative zur cmd.exe und Windows Script Host

binta
Download Presentation

Windows PowerShell

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Windows PowerShell Seminar Internet Technologien Mario Richter

  2. Inhalt • Motivation • Entwicklung • Kern: Cmdlets • PowerShell • Erweiterbarkeit • Beispiele • PowerShell Scripting Language (PLS) • Ausblick Mario Richter: Windows PowerShell

  3. Motivation • Entwicklung einer Alternative zur cmd.exe und Windows Script Host • Beherrscht nun wie von Unix-Shells bekannte Pipes und Filter • Ermöglicht Ausführung und Verknüpfung einfacher Befehle an der Konsole sowie • Entwicklung komplexer Skript-Programme mit eigener PowerShell Scripting Language Mario Richter: Windows PowerShell

  4. Entwicklung • Entwickelt von Microsoft: Codename Monad und Microsoft Command Shell (MSH) • Basiert auf .NET Framework 2.0 (22.01.2006) • Aktuelle Version 1.0 (14.11.2006) • Erhältlich für (kostenlos) • Windows XP • Windows Server 2003 • Windows Vista • Windows Server 2008 Mario Richter: Windows PowerShell

  5. Cmdlets • Cmdlets sind kleine Funktionseinheiten • z.B. Copy-Item (Alias: cp, copy), Get-Help (Alias: man, help), Get-Location (Alias: gl, pwd) • Benennungsschema Verb-Substantiv, nicht case-sensitiv, Autovervollständigung • Implementiert als .NET-Klassen • Verfügen über Parameter und Objekte als Eingabe • Und geben Objekte wieder zurück Mario Richter: Windows PowerShell

  6. Cmdlets • Beispiel für Eingabe-Parameter, -Objekte und Rückgabe Objekt Mario Richter: Windows PowerShell

  7. Mario Richter: Windows PowerShell

  8. PowerShell • Erlaubt Zugriff auf das gesamte .NET Framework (Sammlung von Klassenbibliotheken (APIs)) • Erlaubt Zugriff auf WMI-Klassen (Windows Management Instrumentation, Zugriff auf Einstellungen des Windows-Rechners, lokal und über Netzwerk, wichtig für Fernwartung und Administration) Mario Richter: Windows PowerShell

  9. PowerShell • Erlaubt Zugriff auf COM-Objekte (ComponentObject Model, Interprozesskommunikation und dynamische Objekterzeugung) Mario Richter: Windows PowerShell

  10. Erweiterbarkeit • Import von sog. Snap-Ins möglich • Snap-Ins enthalten (Sätze von) Cmdlets Mario Richter: Windows PowerShell

  11. Beispiele • Beende alle Prozesse, deren Namen mit dem Buchstaben „p“ beginnen: • get-process p* | stop-process • Warte, bis ein bestimmter Prozess (notepad) beendet wurde: • $processToWatch = get-process notepad • $processToWatch.WaitForExit() Mario Richter: Windows PowerShell

  12. Beispiele • Ändere eine Zeichenkette von Kleinbuchstaben in Großbuchstaben: • "hallo welt!".ToUpper() • Füge die Zeichenfolge „ABC“ nach dem ersten Buchstaben des Wortes „string“ ein: • "string".Insert(1, "ABC") Mario Richter: Windows PowerShell

  13. Screenshot Mario Richter: Windows PowerShell

  14. PowerShell Scripting Language • Eigene Scriptsprache für PowerShell • Neuentwicklung, basiert nicht auf eine bestehenden Scriptsprache • Inspiriert von UNIX-Shell-Sprachen, Perl, PHP, Python und C# • Kennt nicht nur Variablen, sondern auch Schleifen und Bedingungen Mario Richter: Windows PowerShell

  15. PowerShell Scripting Language • Variablen • $v = „Beispiel“ <= String, automatisch • [int]$i = 5 <= Integer, explizit angegeben • Zahlen: [int], [long], [double], [decimal], [float], [single], [byte] • Zeichen: [string], [char] Mario Richter: Windows PowerShell

  16. PowerShell Scripting Language • Sichtbarkeit von Variablen • global: sichtbar in allen Bereichen • script: sichtbar in allen Bereichen der Script-Datei • local: sichtbar nur im aktuellen Bereich und darin eingebetteter Bereich (z.B. Funktionen) • private: sichtbar nur im aktuellen Bereich (z.B. innerhalb einer Funktion) Mario Richter: Windows PowerShell

  17. PowerShell Scripting Language • Bedingungen • if(Bedingung) {…}elseif(Bedingung) {…}else {…} • switch(Bedingung) {wert1 {…}wert2 {…}default {…}} Mario Richter: Windows PowerShell

  18. PowerShell Scripting Language • Schleifen • while(Bedingung) {… } • for([Initialisierung]; [Bedingung]; [Iteration]) {…} • Bsp: for($i = 1; $i -le 10; $i += 1) • foreach(identifier in collection) {…} Mario Richter: Windows PowerShell

  19. PowerShell Scripting Language • Funktionen • function name {param($parameter1, $parameter2, …)} • Filter • filter name {param($parameter1, $parameter2, …)} • Funktionen und Filter unterscheiden sich bei der Pipeline-Verarbeitung Mario Richter: Windows PowerShell

  20. Ausblick • Zurzeit ist PowerShell V2 CTP3 verfügbar (22.12.2008) • PowerShell V2 besitzt eine grafische Oberfläche (ISE: Integrated Scripting Environment) • PS V2 wird mit Windows 7 ausgeliefert (geplant) Mario Richter: Windows PowerShell

  21. Mario Richter: Windows PowerShell

  22. Quellen • http://de.wikipedia.org/wiki/Windows_PowerShell • http://www.microsoft.com/germany/technet/scriptcenter/hubs/msh.mspx • http://www.searchnetworking.de/powershell/ • http://www.it-visions.de/glossar/alle/4480/Powershell%20Language.aspx Mario Richter: Windows PowerShell

  23. Ende • Vielen Dank für Ihre Aufmerksamkeit • Fragen? Mario Richter: Windows PowerShell

More Related