Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Seminar Internet Technologien Mario Richter. Inhalt Motivation Entwicklung Kern: Cmdlets PowerShell Erweiterbarkeit Beispiele PowerShell Scripting Language.

Ähnliche Präsentationen


Präsentation zum Thema: "Seminar Internet Technologien Mario Richter. Inhalt Motivation Entwicklung Kern: Cmdlets PowerShell Erweiterbarkeit Beispiele PowerShell Scripting Language."—  Präsentation transkript:

1 Seminar Internet Technologien Mario Richter

2 Inhalt Motivation Entwicklung Kern: Cmdlets PowerShell Erweiterbarkeit Beispiele PowerShell Scripting Language (PLS) Ausblick 2Mario 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 3Mario Richter: Windows PowerShell

4 Entwicklung Entwickelt von Microsoft: Codename Monad und Microsoft Command Shell (MSH) Basiert auf.NET Framework 2.0 ( ) Aktuelle Version 1.0 ( ) Erhältlich für (kostenlos) Windows XP Windows Server 2003 Windows Vista Windows Server 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 5Mario Richter: Windows PowerShell

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

7 Windows PowerShell (Cmdlet) Windows PowerShell (Alias) cmd.exe (MS-DOS, Windows) Shell (Unix, Linux) Beschreibung Get-Locationgl, pwdcdpwd Ausgabe des aktuellen Verzeichnisses Set-Locationsl, cd, chdircd, chdircd Wechseln des aktuellen Verzeichnisses Clear-Hostcls, clearclsclear Löschen des Bildschirms Copy-Itemcpi, copy, cpcopycp Kopieren einer oder mehrerer Dateien / eines ganzen Verzeichnisbaums Get-Helphelp, manhelpman Hilfe zu Befehlen Remove- Item ri, del, rmdir, rd, rm del, rmdir, rd rm, rmdir Löschen einer Datei / eines Verzeichnisses Rename- Item rni, renrenmv Umbenennen einer Datei / eines Verzeichnisses Move-Item mi, move, mv movemv Verschieben einer Datei / eines Verzeichnisses Get- ChildItem gci, dir, lsdirls Liste aller Dateien / Verzeichnisse im (aktuellen) Verzeichnis Mario Richter: Windows PowerShell7

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 PowerShell8

9 PowerShell Erlaubt Zugriff auf COM-Objekte (Component Object Model, Interprozesskommunikation und dynamische Objekterzeugung) Mario Richter: Windows PowerShell9

10 Erweiterbarkeit Import von sog. Snap-Ins möglich Snap-Ins enthalten (Sätze von) Cmdlets 10Mario 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() 11Mario 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") 12Mario Richter: Windows PowerShell

13 Screenshot 13Mario 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 PowerShell14

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 PowerShell15

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 PowerShell16

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

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 PowerShell18

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 PowerShell19

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

21 21Mario Richter: Windows PowerShell

22 Quellen nter/hubs/msh.mspx visions.de/glossar/alle/4480/Powershell%20Language. aspx 22Mario Richter: Windows PowerShell

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


Herunterladen ppt "Seminar Internet Technologien Mario Richter. Inhalt Motivation Entwicklung Kern: Cmdlets PowerShell Erweiterbarkeit Beispiele PowerShell Scripting Language."

Ähnliche Präsentationen


Google-Anzeigen