Download der Folien und Skripte http www itvisions

  • Slides: 38
Download presentation
Download der Folien und Skripte: http: //www. it-visions. de/v 4991. aspx Windows Power. Shell

Download der Folien und Skripte: http: //www. it-visions. de/v 4991. aspx Windows Power. Shell { für Administratoren} Dr. Holger Schwichtenberg Softwarearchitekt, Berater, Fachjournalist www. IT-Visions. de Version 1. 3 b/21. 02. 08

Über den Sprecher : Dr. Holger Schwichtenberg Dr. rer. pol. Diplom-Wirtschaftsinformatiker MVP, . NET

Über den Sprecher : Dr. Holger Schwichtenberg Dr. rer. pol. Diplom-Wirtschaftsinformatiker MVP, . NET Code Wise Member, MCSD seit 1996 Softwareentwicklung mit Windows COM/. NET Heute: Firma www. IT-Visions. de (Sitz: Essen) 50%: Architektur, Design, Entwicklung 50%: Beratung, Schulungen, Coaching, Fachartikel, Fachbücher, Konferenzvorträge Fachjournalist i. X, DOTNETpro, Computer Zeitung, Windows IT Pro, PC Magazin, Objekt. Spectrum, MSDN Online, u. a. Buchautor Addison-Wesley, Microsoft Press, WEKA Media Vortragender nationale und internationale Fachkonferenzen (Tech. Ed, OOP, ADC, BASTA, IT Forum, STC, WI, Net. Object Days, etc. ) Kontakt hs@IT-Visions. de Community Website http: //www. dotnetframework. de Weblog http: //www. dotnet-doktor. de

Bücher zur Power. Shell ll r. She e w o P n zur e

Bücher zur Power. Shell ll r. She e w o P n zur e t i e S 50 1 16. März 2007 18. Oktober 2007

Wer sind Sie? Windows Administratoren (oder Entwickler) Erfahrung mit Batch, WSH, ADSI, WMI Keine

Wer sind Sie? Windows Administratoren (oder Entwickler) Erfahrung mit Batch, WSH, ADSI, WMI Keine Grundkenntnisse in Power. Shell (dies ist ein Einführungsvortrag „Level 200“ !)

Inhalt Die wichtigsten Fakten zur Power. Shell Motivation: WSH versus Power. Shell Grundkonzepte der

Inhalt Die wichtigsten Fakten zur Power. Shell Motivation: WSH versus Power. Shell Grundkonzepte der Power. Shell Commandlets Objektorientiertes Pipelining Anbindung an. NET, COM und WMI Einheitliches Navigationsparadigma Power. Shell Skript Language Power. Shell-Skripte Anwendungsbeispiele Prozesse, Dienste, Dateisystem, Ereignisprotokolle Registry ACLs Active Directory IIS 7. 0 Datenbankzugriff Ausblick

GUI versus CLI GUI Linux/Unix Windows

GUI versus CLI GUI Linux/Unix Windows

Die wichtigsten Fakten zur Power. Shell Interaktive Systemadministration + Scripting Nachfolger von DOS-Fenster und

Die wichtigsten Fakten zur Power. Shell Interaktive Systemadministration + Scripting Nachfolger von DOS-Fenster und WSH Basis: . NET 2. 0 (läuft aber auch mit. NET 3. x!) Option in W 08, kostenfreies Add-On für XP, 2003, Vista Zugriff auf. NET, COM, WMI, ADSI, XML, u. v. m. Einzelbefehle: Commandlets (. NET-Klassen) Befehlskombination: Objekt-Pipelining Skripte: Power. Shell Skript Language (PSL) Mengen: Navigation Provider Eigene Commandlets (Skript oder. NET) Hosting der Power. Shell in eigenen. NET-Anwendungen Power. Shell-fähige Produkte: Exchange 2007, System Center Virtual Machine Manager (SCVMM), …

Installation in Windows 2008

Installation in Windows 2008

Motivation: Softwareinventar Erstelle eine Inventardatei (CSV) Alle installierten Anwendungen Filter auf Hersteller Von mehreren

Motivation: Softwareinventar Erstelle eine Inventardatei (CSV) Alle installierten Anwendungen Filter auf Hersteller Von mehreren Computerm In eine CSV-Datei Eingabedatei: Computernamen. txt Ausgabedatei: Softwareinventar. csv

Lösung mit dem WSH/VBScript

Lösung mit dem WSH/VBScript

Lösung mit der Power. Shell

Lösung mit der Power. Shell

Einflussfaktoren

Einflussfaktoren

Commandlets & andere Befehle Commandlets (Cmdlets) Allgemeine Syntax: Verb-Substantiv [-Parameterliste] Beispiele: DEMO get-process, get-service,

Commandlets & andere Befehle Commandlets (Cmdlets) Allgemeine Syntax: Verb-Substantiv [-Parameterliste] Beispiele: DEMO get-process, get-service, get-location get-childitem c: daten, set-location c: windows, remove-item, u. a. get-command, get-help Mathe: 10* (8 + 6) DOS-/Windows-EXEs: c: WindowsNotepad. exe WSH-Skriptdateien: . vbs, . js, . vbe, . wsf, etc. Windows-Dokumente: . pdf, . doc, . xls, etc.

Objektorientiertes Pipelining Keine unstrukturierten Daten == Zeichenketten (kein grep, kein sed) sondern. NET-Objekte (strukturiert!)

Objektorientiertes Pipelining Keine unstrukturierten Daten == Zeichenketten (kein grep, kein sed) sondern. NET-Objekte (strukturiert!) Power. Shell Pipeline Processor reicht Objekt von Upstream- zu Downstream-Objekt weiter "compositional model of administration" Get-Process | Where-Object { $_. name -eq "iexplore" } | Format-Table Process. Name, Working. Set get-childitem c: daten -filter *. dll | where-object {$_. Length -gt 40000} | sort-object Length | format-list

Pipelining-Commandlets Ausgaben: Format-Table, Format-List, Format. Wide Filtern: where-object, select-object –first / -last "Kastrieren": select-object

Pipelining-Commandlets Ausgaben: Format-Table, Format-List, Format. Wide Filtern: where-object, select-object –first / -last "Kastrieren": select-object (Abschneiden von Attributen der Objekte) Sortieren: sort-object DEMO Gruppieren: group-object Sequentielle Verarbeitung: foreach-object Pipeline analysieren: get-member Berechnungen: measure-object Variablen in Pipelines: $x = get-process … $x | … Zusammenfassung: $( get-process ; get-service )

Power. Shell Pipeline Processor

Power. Shell Pipeline Processor

NEU: Power. Shell Plus Kommandozeile mit Intelli. Sense Editor mit Intelli. Sense und Debugger

NEU: Power. Shell Plus Kommandozeile mit Intelli. Sense Editor mit Intelli. Sense und Debugger http: //www. powershell. com 79 Euro / kostenlos für nicht-kommerziellen Einsatz DEMO

Verlosung… Drei Vollversionen der Power. Shell Plus Im Wert von 79 Euro an die

Verlosung… Drei Vollversionen der Power. Shell Plus Im Wert von 79 Euro an die drei Personen die eine E-Mail mit dem Betreff „Power. Shell ist cool!“… im Posteingang von launch 08@ITVisions. de platzieren… als 1. , 15. und 50. !

Allgemeine Parameter Viele Commandlets unterstützen: -Whatif -Confirm EMO D -Verbose Pow er. Sh ell

Allgemeine Parameter Viele Commandlets unterstützen: -Whatif -Confirm EMO D -Verbose Pow er. Sh ell is t coo laun ch 08 @IT l! -Vis ions . de

Arbeit mit Objekten Instanziieren, Methoden, Attribute, (Abfragen). NET $d= new-object System. Date. Time(2004, 12,

Arbeit mit Objekten Instanziieren, Methoden, Attribute, (Abfragen). NET $d= new-object System. Date. Time(2004, 12, 1 [System. Environment]: : Computer. Name COM $wsh = new-object –com "WScript. Shell" WMI get-wmiobject win 32_useraccount Beispiel (. NET): $Url = "http: //www. windows-scripting. com" $wclient = new-object System. Net. Web. Client $html = $wclient. Download. String($Url) DEMO

WMI-Beispiele Name und freie Bytes auf allen Laufwerken Get-Wmiobject Win 32_logicaldisk | Select-Object deviceid,

WMI-Beispiele Name und freie Bytes auf allen Laufwerken Get-Wmiobject Win 32_logicaldisk | Select-Object deviceid, freespace Name und Domain der Benutzerkonten, deren Kennwort niemals verfällt Get-Wmiobject Win 32_account | Where-Object {$_. Kennwortexpires -eq 0 } | Select-Object Name, Domain Alle Netzwerkadapter mit TCP/IP (Filter) Get-Wmiobject Win 32_Network. Adapter. Configuration Filter "IPEnabled=true" | select Description, IPAddress Ausgewählte Protokolleinträge (WQL) Get-Wmi. Object -query "SELECT Record. Number, Message FROM Win 32_NTLog. Event where Logfile='Application' and Time. Written > '14/02/2008' and message like '%exchange%'"

Power. Shell Provider Unterschiedliche Datenmengen: hierarchisch/flach Gleiche Verben: get, set, new, remove, etc. Get-PSDrive

Power. Shell Provider Unterschiedliche Datenmengen: hierarchisch/flach Gleiche Verben: get, set, new, remove, etc. Get-PSDrive Menge der Provider und Menge der Laufwerke ist erweiterbar Verfügbare Mengen Registry Umgebungsvariablen Aliase Zertifikate Variablen Active Directory/LDAP PSCX Demnächst: SQL Server

Registry-Beispiel DEMO Navigation zu HKEY_LOCAL_MACHINE/Software cd hklm: software Kurzform für: Set-Location hklm: software Auflisten

Registry-Beispiel DEMO Navigation zu HKEY_LOCAL_MACHINE/Software cd hklm: software Kurzform für: Set-Location hklm: software Auflisten der Unterschlüssel des aktuellen Schlüssels Dir Kurzform für: Get-Childitem Erzeugen eines Unterschlüssels mit Namen „IT-Visions“ md IT-Visions Erzeugen eines Unterschlüssels mit einem Standardwert New-Item -Name "Inhaber" -Value "Dr. Holger Schwichtenberg" -type String Erzeuge Wert New-Itemproperty -path "hklm: softwarewww. it-visions. de" -name "Inhaber" -value "Dr. Holger Schwichtenberg" -type string Lese Werte Get-Item. Property

Skripte - Kontrollstrukturen $Variable if (Bedingung) {…} else {…} switch ($var) { Wert: {…}

Skripte - Kontrollstrukturen $Variable if (Bedingung) {…} else {…} switch ($var) { Wert: {…} } while(Bedingung) { … } do { … } while (Bedingung) do { … } until (Bedingung) foreach ($var in $menge) {…} function name {…} return trap Fehlerklasse { … } else { … } throw "Fehlertext" throw Fehlerklasse Exit # Kommentar

Skriptdateien Textdateien Dateierweiterung. ps 1. Die Zahl 1 steht dabei für die Version 1.

Skriptdateien Textdateien Dateierweiterung. ps 1. Die Zahl 1 steht dabei für die Version 1. 0 der Power. Shell. Microsoft hat in Hinblick auf die Langlebigkeit vieler Scripts vorgesehen, dass verschiedene Versionen der Power. Shell auf einem System koexistieren können. Start innerhalb der Power. Shell: Skriptname oder Skriptname. ps 1 oder &Skriptname. ps 1 oder Invoke-Expression Skriptname. ps 1 Außerhalb der Power. Shell: Power. Shell Skriptname. Power. Shell –command Skriptname. Power. Shell

Beispiel

Beispiel

Execution Policies DEMO Restricted: keine Skripte (STANDARDEINSTELLUNG!) All. Signed: nur signierte Skripte, signierte Skripte

Execution Policies DEMO Restricted: keine Skripte (STANDARDEINSTELLUNG!) All. Signed: nur signierte Skripte, signierte Skripte von nicht-vertrauten Quellen auf Nachfrage Remote. Signed: Signatur nur für Skripte aus dem Internet (via Browser, Outlook, Messenger) Unrestricted: alle Skripte laufen

Skripte signieren makecert. exe dir cert: ## sign-file. Power. Shell ## Sign a file

Skripte signieren makecert. exe dir cert: ## sign-file. Power. Shell ## Sign a file param([string] $file=$(throw "Please specify a filename. ")) $cert = @(get-childitem cert: Current. UserMy codesigning)[0] set-authenticode. Signature $file $cert

{ Anwendungsbeispiele} Demos - Download des Codes: http: //www. it-visions. de/V 4991. aspx Dateisystem:

{ Anwendungsbeispiele} Demos - Download des Codes: http: //www. it-visions. de/V 4991. aspx Dateisystem: Ordnergrößen ermitteln (rekursiv) Dateisystem: ACL verändern Active Directory: Benutzer anlegen (zwei Varianten) Eine Datenbank auslesen (und Benutzer anlegen) IIS: Eine Menge von IIS-Websites anlegen

Fazit Intuition Prägnanz Typsicherheit Noch ist die Power. Shell nicht weit verbreitet (Noch verkaufen

Fazit Intuition Prägnanz Typsicherheit Noch ist die Power. Shell nicht weit verbreitet (Noch verkaufen wir mehr Bücher zum WSH als zur Power. Shell) Windows Server 2008 wird einen Schub bringen

Ausblick: Power. Shell 2. 0 · Es gibt bereits eine CTP-Version! Graphical Power. Shell

Ausblick: Power. Shell 2. 0 · Es gibt bereits eine CTP-Version! Graphical Power. Shell (Editor) Fernaufruf mit WS-MGMT Asynchrone Befehlsausführung (Jobs) Konsolenbasiertes Script Debugging Eingeschränkte Shells, die nur bestimmte Befehle/Skripte zulassen ("Restricted Runspaces") · Ereignissystem, das über Änderungen in beliebigen Objekten informiert · Verpacken von Skripten und zugehörigen Datendateien · Verbesserung bei WMI, ADSI, u. v. m. · · ·

Links: Werkzeuge & Erweiterungen Power. Shell 1. 0 http: //www. microsoft. com/technet/scriptcenter/topics/msh/download. mspx Power.

Links: Werkzeuge & Erweiterungen Power. Shell 1. 0 http: //www. microsoft. com/technet/scriptcenter/topics/msh/download. mspx Power. Shell Documentation http: //www. microsoft. com/downloads/details. aspx? familyid=B 4720 B 00 -9 A 66 -430 FBD 56 -EC 48 BFCA 154 F&displaylang=en Power. Shell Community Extensions (PSCX) http: //www. codeplex. com/Power. Shell. CX IT-Visions. de Power. Shell Extensions http: //www. it-visions. de/scripting/powershell/Power. Shell. Commandlet. Extensions. aspx Power. Shell Gadgets http: //www. powergadgets. com/ Power. Shell. Plus http: //www. powershell. com Power. Shell WMI Explorer http: //thepowershellguy. com/blogs/posh/archive/2007/03/22/powershell-wmi-explorerpart-1. aspx Power. Shell Analyzer http: //www. karlprosser. com/coder/? page_id=14 Power. Shell Help http: //www. primalscript. com/freetools/defaultin. asp Power. Shell Tab http: //www. primalscript. com/freetools/defaultin. asp

Links: Informationen Offizielles Weblog des Power. Shell-Teams: http: //blogs. msdn. com/Power. Shell-Community-Website des Sprechers:

Links: Informationen Offizielles Weblog des Power. Shell-Teams: http: //blogs. msdn. com/Power. Shell-Community-Website des Sprechers: http: //www. powershell-doktor. de Offizielle Power. Shell-Website: http: //www. microsoft. com/technet/scriptcenter/hubs/msh. mspx Sammlung von Power. Shell-Scripts: http: //www. microsoft. com/technet/scriptcenter/scripts/msh/default. mspx? mfr=true Websites mit Scripts: http: //powershell. wiki. com/ und http: //scripts. readify. net Link-Liste von Power. Shell-Ressourcen: http: //del. icio. us/powershell Powershell Live User Community: http: //powershelllive. com

Mehr zur Power. Shell oder. NET? Beratung, Schulungen (öffentlich und In. House), Workshops, Coaching,

Mehr zur Power. Shell oder. NET? Beratung, Schulungen (öffentlich und In. House), Workshops, Coaching, Entwicklung Nächste Power. Shell-Schulungen (Holger Schwichtenberg & Peter Monadjemi): 28. 4. -30. 4. 2008 in Essen 4. -6. 6. 2008 in Essen 8. -10. 2008 in Essen Telefon 0201/7490 -700 hs@IT-Visions. de

Am Ende. . . Danke für Ihre Aufmerksamkeit! FRAGEN ? jetzt!!! …oder später unter

Am Ende. . . Danke für Ihre Aufmerksamkeit! FRAGEN ? jetzt!!! …oder später unter www. IT-Visions. de/Foren Download der Folien und Skripte: http: //www. it-visions. de/v 4991. aspx

© 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows Vista and other product names

© 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U. S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Windows Server 2008 weitere Ressourcen Windows Server 2008 Tech Center http: //www. microsoft. com/germany/technet/prodtechnol/windowsserver/2008/de

Windows Server 2008 weitere Ressourcen Windows Server 2008 Tech Center http: //www. microsoft. com/germany/technet/prodtechnol/windowsserver/2008/de fault. mspx Windows Server 2008 Webcasts: http: //www. microsoft. com/germany/technet/webcasts/windowsserver 2008. mspx Windows Server 2008 Produktseite: http: //www. microsoft. com/germany/windowsserver 2008/default. mspx Microsoft Virtualization: http: //www. microsoft. com/virtualization/default. mspx

Ask the Experts Wir freuen uns auf Ihre Fragen: Technische Experten stehen Ihnen während

Ask the Experts Wir freuen uns auf Ihre Fragen: Technische Experten stehen Ihnen während der gesamten Veranstaltung in der Haupthalle zur Verfügung.