Erhalten Sie Zugang zu diesem und mehr als 300000 Büchern ab EUR 5,99 monatlich.
Systemadministration mit Skripten für alle Windows-Versionen inkl. Windows 10 und Windows Server 2016
Sowohl in großen als auch in kleineren Computernetzwerken gibt es wiederkehrende Aufgaben, die sich durch Skripte automatisieren lassen. Windows bietet mit dem Windows Script Host (WSH) und der Windows PowerShell (WPS) zwei Produkte für diese automatisierte Systemadministration.
Administratoren und Power User ohne Programmierkenntnisse erhalten in diesem Fachbuch eine schrittweise Einführung in die Entwicklung von Windows-Skripten mit dem WSH, Visual Basic Script (VBScript) und verschiedenen so genannten COM-Komponenten sowie der PowerShell.
AUS DEM INHALT//
WSH 5.8, VBScript 5.8: Lernen Sie die Komponenten und Werkzeuge kennen.
Praxislösungen: Erstellen Sie Skripte für Benutzerverwaltung, Active Directory, Gruppenrichtlinien, Computerverwaltung, Desktop, Dateisysteme, Dienste, Registry, Ereignisprotokolle, Prozesse, Hardware, Netzwerkkonfiguration, Softwareverwaltung, Datenbanken, Text-, INI- und XML-Dateien.
Sicherheit: So unterbinden Sie Skripte, signieren digital und verschlüsseln und arbeiten mit der Benutzerkontensteuerung (UAC).
PowerShell 5.0: Erfahren Sie, wie Sie die mächtige Alternative zum WSH nutzen.
Sie lesen das E-Book in den Legimi-Apps auf:
Seitenzahl: 534
Das E-Book (TTS) können Sie hören im Abo „Legimi Premium” in Legimi-Apps auf:
Holger Schwichtenberg
Windows Scripting lernen
Von Windows ScriptHost und Visual Basic Script bis zur Windows PowerShell
Der Autor:
Dr. Holger Schwichtenberg, Essen
Alle in diesem Buch enthaltenen Informationen, Verfahren und Darstellungen wurden nach bestem Wissen zusammengestellt und mit Sorgfalt getestet. Dennoch sind Fehler nicht ganz auszuschließen. Aus diesem Grund sind die im vorliegenden Buch enthaltenen Informationen mit keiner Verpflichtung oder Garantie irgendeiner Art verbunden. Autoren und Verlag übernehmen infolgedessen keine juristische Verantwortung und werden keine daraus folgende oder sonstige Haftung übernehmen, die auf irgendeine Art aus der Benutzung dieser Informationen – oder Teilen davon – entsteht.
Ebenso übernehmen Autoren und Verlag keine Gewähr dafür, dass beschriebene Verfahren usw. frei von Schutzrechten Dritter sind. Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Buch berechtigt deshalb auch ohne besondere Kennzeichnung nicht zu der Annahme, dass solche Namen im Sinne der Warenzeichen und MarkenschutzGesetzgebung als frei zu betrachten wären und daher von jedermann benutzt werden dürften.
Bibliografische Information der Deutschen Nationalbibliothek: Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de abrufbar.
Dieses Werk ist urheberrechtlich geschützt. Alle Rechte, auch die der Übersetzung, des Nachdruckes und der Vervielfältigung des Buches, oder Teilen daraus, vorbehalten. Kein Teil des Werkes darf ohne schriftliche Genehmigung des Verlages in irgendeiner Form (Fotokopie, Mikrofilm oder ein anderes Verfahren) – auch nicht für Zwecke der Unterrichtsgestaltung – reproduziert oder unter Verwendung elektronischer Systeme verarbeitet, vervielfältigt oder verbreitet werden.
© 2016 Carl Hanser Verlag Münchenwww.hanser-fachbuch.de
Lektorat: Sylvia Hasselbach Copyediting: Petra Kienle, Fürstenfeldbruck Herstellung: Irene Weilhart Umschlagdesign: Marc Müller-Bremer, www.rebranding.de, München Umschlagrealisation: Stephan Rönigk
Print-ISBN 978-3-446-44800-1 E-Book ISBN 978-3-446-44944-2
Verwendete Schriften: SourceSansPro und SourceCodePro (Lizenz) CSS-Version: 1.0
Titelei
Impressum
Inhalt
Vorwort
Website für Leser
Über den Autor Dr. Holger Schwichtenberg
Hinweise für den Leser
Schreibweisen in diesem Buch
Hinweise zu den Listings
1 Einführung in den Windows Script Host (WSH)
1.1 Der Windows Script Host
1.2 Scripting versus Programmierung
1.3 Voraussetzungen
1.4 Die Sprache Visual Basic Script
1.5 Das erste Skript
1.6 Scripting im Kommandozeilenfenster
1.7 Das zweite Skript: Versionsnummern ermitteln
1.8 Ein Wort zur Sicherheit
1.9 Wie geht es weiter?
1.10 Fragen und Aufgaben
2 Scripting-Werkzeuge
2.1 Nur zur Not: Notepad
2.2 Einer für alles: PrimalScript
2.3 Der WSH-Spezialist: SystemScripter
2.3.1 Fehlerarten
2.3.2 Start des Debuggers
2.3.3 Funktionen des Microsoft Script Debuggers
2.4 Fragen und Aufgaben
3 Scripting und die Benutzerkontensteuerung
3.1 Benutzerkontensteuerung
3.2 WSH-Skripte arbeiten nicht mit der Benutzerkontensteuerung zusammen
3.3 Lösungen des Problems
3.4 Start aus dem Admin-Konsolenfenster heraus
3.5 Anlegen einer Verknüpfung zu wscript.exe oder cscript.exe
3.6 Benutzerkontensteuerung deaktivieren
3.7 Änderungen der Benutzerkontensteuerung in Windows 8.x und Windows 10 sowie Windows Server 2012 sowie Windows Server 2016
4 Programmieren mit VBScript
4.1 Die Visual-Basic-Sprachfamilie
4.2 Allgemeines zum Arbeiten mit VBScript
4.3 Kommentare
4.4 Literale
4.5 Konstanten
4.5.1 Vordefinierte Konstanten
4.5.2 Definieren eigener Konstanten
4.5.3 Verwenden von Konstanten
4.6 Variablen
4.6.1 Verwendung von Variablen
4.6.2 Datentypen
4.7 Operatoren
4.7.1 Arithmetische Operatoren
4.7.2 Vergleichsoperatoren
4.7.3 Logische Operatoren
4.7.4 Bitweise Operationen
4.8 Bedingungen
4.8.1 If . . . Then
4.8.2 Select Case
4.8.3 Bedingte Ausgaben zur Fehlersuche
4.9 Schleifen
4.9.1 For . . . Next
4.9.2 Do . . . Loop
4.10 Arrays (Variablenmengen)
4.10.1 Eindimensionale Arrays
4.10.2 Mehrdimensionale Arrays
4.11 Eingebaute Funktionen
4.11.1 Eingabehilfen
4.11.2 Ein- und Ausgabefunktionen
4.11.3 Konvertierungsfunktionen
4.11.4 Abs() und Int()
4.11.5 Rnd()
4.11.6 InStr()
4.11.7 Left(), Right() und Mid()
4.11.8 Replace() und Trim()
4.11.9 UCase() und LCase()
4.11.10 Split() und Join()
4.11.11 Date(), Time() und Now()
4.11.12 DateAdd() und DateDiff()
4.11.13 Hour(), Minute(), Second(), Day(), Month(), Year() und WeekDay()
4.11.14 Format(), FormatNumber() und FormatDateTime()
4.11.15 IsDate(), IsNumeric(), IsArray()
4.12 Unterroutinen
4.12.1 Unterroutine ohne Rückgabewert (Prozedur)
4.12.2 Unterroutine mit Rückgabewert (Funktion)
4.13 Benutzerdefinierte Fehlerbehandlung
4.14 Fragen und Aufgaben
5 Programmieren mit Objekten
5.1 Was ist ein Objekt?
5.2 Was ist eine Klasse?
5.3 Objekte haben Beziehungen
5.4 Was ist eine Komponente?
5.5 Wie arbeitet man mit Objekten?
5.5.1 Objektvariablen
5.5.2 Instanziierung eines Objekts aus einer Klasse
5.5.3 Auslesen des Werts eines Attributs
5.5.4 Setzen des Werts eines Attributs
5.5.5 Aufruf einer Methode
5.5.6 Reagieren auf ein Ereignis
5.5.7 Löschen eines Objekts
5.5.8 Duplizieren eines Objekts
5.5.9 Vergleich zweier Objekte
5.5.10 Ermitteln der Klasse, zu der ein Objekt gehört
5.6 Eingabehilfen für Objekte
5.7 Wie erfahre ich, welche Objekte es überhaupt gibt?
5.8 Was passiert, wenn ein Objekt nicht da ist?
5.9 Was ist eine Objektmenge?
5.9.1 For Each . . . Next
5.9.2 Zugriff auf einzelne Objekte in einer Objektmenge
5.9.3 Verändern einer Objektmenge
5.10 Fragen und Aufgaben
6 Komponenten für das Scripting
6.1 WSH Runtime (WSHRun)
6.1.1 Installation
6.1.2 Klassen
6.1.3 Beispiele
6.2 Scripting Runtime (SCRRun)
6.2.1 Installation
6.2.2 Klassen
6.2.3 Objektauswahl
6.2.4 Beispiele
6.3 ActiveX Data Objects (ADO)
6.3.1 Installation
6.3.2 Klassen
6.3.3 Objektauswahl
6.3.4 Beispiele
6.4 Active Directory Service Interface (ADSI)
6.4.1 Installation
6.4.2 Klassen
6.4.3 Hilfsmittel
6.5 Group Policy Management-Komponente (GPMC Objects)
6.5.1 Installation
6.5.2 Klassen
6.5.3 Hilfsmittel
6.5.4 Beispiele
6.6 Windows Management Instrumentation (WMI)
6.6.1 Installation
6.6.2 WMI-Klassen
6.6.3 Scripting-Hilfsklassen für WMI
6.6.4 Objektauswahl
6.6.5 Hilfsmittel
6.7 Microsoft XML (MSXML)
6.7.1 XML-Grundlagen
6.7.2 Installation
6.7.3 Klassen
6.8 Fragen und Aufgaben
7 Datenübergabe und Datenausgabe
7.1 Kommandozeilenparameter
7.1.1 Komplexere Parameter
7.1.2 Kommandozeilenparameter des WSH
7.2 Zugriff auf Datendateien
7.2.1 Zugriff auf CSV-Dateien
7.2.2 Zugriff auf INI-Dateien
7.2.3 Zugriff auf Access-Datenbanken
7.2.4 Zugriff auf XML-Dateien
7.3 Fragen und Aufgaben
8 Scripting des Dateisystems
8.1 Dateien
8.1.1 Auflisten von Dateien
8.1.2 Dateieigenschaften bestimmen
8.1.3 Dateieigenschaften ändern
8.1.4 Anlegen einer Textdatei
8.1.5 Lesen einer Textdatei
8.1.6 Schreiben von Dateien
8.1.7 Umbenennen einer Datei
8.1.8 Kopieren einer Datei
8.1.9 Verschieben einer Datei
8.1.10 Dateien suchen
8.1.11 Suchen in Dateiinhalten
8.1.12 Dateien löschen
8.2 Verzeichnisse
8.2.1 Auflisten eines einzelnen Verzeichnisses
8.2.2 Auflisten eines Verzeichnisbaums
8.2.3 Anlegen eines Verzeichnisses
8.2.4 Verzeichnisattribute bestimmen
8.2.5 Umbenennen eines Verzeichnisses
8.2.6 Löschen von Verzeichnissen
8.2.7 Kopieren von Verzeichnissen
8.2.8 Verschieben von Verzeichnissen
8.2.9 Verzeichnis suchen
8.2.10 Eine Verzeichnisstruktur gemäß einer XML-Datei anlegen
8.2.11 Eine Verzeichnisstruktur in einer XML-Datei dokumentieren
8.3 Papierkorb leeren
8.4 Rechte auf Dateien und Verzeichnisse vergeben
8.5 Laufwerke
8.5.1 Auflisten von Laufwerken
8.5.2 Laufwerkstyp bestimmen
8.5.3 Dateisystemtyp ermitteln
8.5.4 Speicherplatzbelegung anzeigen
8.5.5 Mit einem Netzlaufwerk verbinden
8.5.6 Netzwerkverbindung trennen
8.5.7 Festplattenprüfung (CheckDisk)
8.6 Freigaben
8.6.1 Anlegen von Freigaben
8.6.2 Löschen von Freigaben
8.6.3 Rechte auf Freigaben
8.7 Fragen und Aufgaben
9 Scripting der Benutzerverwaltung
9.1 Benutzerverwaltung für lokale Benutzerkonten
9.1.1 Anlegen eines Benutzerkontos
9.1.2 Umbenennen eines Benutzers
9.1.3 Kennwort eines Benutzers ändern
9.1.4 Anlegen einer Benutzergruppe
9.1.5 Hinzufügen eines Benutzers zu einer Gruppe
9.1.6 Entfernen eines Benutzers aus einer Gruppe
9.1.7 Deaktivieren eines Benutzerkontos
9.1.8 Löschen einer Gruppe
9.1.9 Löschen eines Benutzers
9.2 Active-Directory-Benutzerverwaltung unter Windows Server
9.2.1 Anlegen einer Organisationseinheit
9.2.2 Anlegen eines Organisationseinheitenbaums im Active Directory
9.2.3 Anlegen eines Benutzerkontos
9.2.4 Anlegen von Benutzern aus einer Access-Datenbank
9.2.5 Anlegen einer Benutzergruppe
9.2.6 Hinzufügen eines Benutzers einer Gruppe
9.2.7 Ändern des Kennworts
9.2.8 Umbenennen eines Benutzers
9.2.9 Ändern der Benutzerdaten
9.2.10 Deaktivieren eines Benutzerkontos
9.2.11 Entfernen eines Benutzers aus einer Gruppe
9.2.12 Löschen eines Benutzerkontos
9.2.13 Löschen einer Organisationseinheit
9.3 Fragen und Aufgaben
10 Scripting der Computerverwaltung
10.1 Computer auflisten
10.2 Leistung eines Computers ermitteln
10.3 Computerkonto erstellen
10.4 Computerkonto löschen
10.5 Computer zu Domäne hinzufügen
10.6 Computer umbenennen
10.6.1.1 Schritt 1: Umbenennen im Active Directory
10.6.1.2 Schritt 2: Lokales System umbenennen
10.7 Einen Computer herunterfahren/neu starten
10.8 Fragen und Aufgaben
11 Scripting der Ereignisprotokolle
11.1 Protokolleinträge lesen
11.2 Protokolleinträge schreiben
11.3 Protokolleinträge auswerten
11.4 Datensicherung des Ereignisprotokolls
11.5 Ereignisprotokoll anlegen
11.6 Ereignisprotokoll löschen
11.7 Ereignisprotokoll leeren
11.8 Überwachung von Einträgen
11.9 Fragen und Aufgaben
12 Scripting der Systemdienste
12.1 Auflisten aller Dienste
12.2 Auflisten aller laufenden Dienste
12.3 Status ermitteln
12.4 Starten
12.5 Beenden eines Dienstes
12.6 Neustart eines Dienstes auf mehreren Computern gemäß einer Textdatei
12.7 Anhalten eines Dienstes
12.8 Fortsetzen eines Dienstes
12.9 Daten ändern
12.10 Dienste überwachen
12.11 Fragen und Aufgaben
13 Scripting des Desktops
13.1 Desktop verändern
13.2 Startmenü verändern
13.3 Fragen und Aufgaben
14 Scripting der Registrierungsdatenbank
14.1 Eintrag lesen
14.1.1 Zugriff mit WSHRun
14.1.2 Zugriff mit WMI
14.2 Wert schreiben
14.2.1 Alternative: WMI
14.3 Eintrag anlegen
14.4 Eintrag löschen
14.4.1 Alternative 1: Löschen mit der WSHRun-Komponente
14.4.2 Alternative 2: Löschen mit der WMI-Komponente
14.5 Unterschlüssel auflisten
14.6 Schlüssel anlegen
14.6.1 Alternative: WMI
14.7 Schlüssel löschen
14.7.1 Alternative: Löschen mit der WSHRun-Komponente
14.8 Berechtigungen vergeben
14.9 Fragen und Aufgaben
15 Scripting der Netzwerk-konfiguration
15.1 Festlegen einer statischen IP-Adresse
15.1.1 Besonderheiten
15.2 Standard-Gateway festlegen
15.3 DNS-Server festlegen
15.4 WINS-Server festlegen
15.5 Auf DHCP umstellen
15.6 Fragen und Aufgaben
16 Scripting der Softwareverwaltung
16.1 Installierte Software auflisten (Softwareinventarisierung)
16.2 Software (entfernt) installieren
16.3 Software auf mehreren Computern installieren (gemäß einer XML-Datei)
16.4 Software deinstallieren
16.5 Fragen und Aufgaben
17 Scripting der Prozessverwaltung
17.1 Prozesse auflisten
17.2 Prozesse (entfernt) starten
17.2.1 Prozesse starten mit WScript.Shell
17.2.2 Prozesse starten mit Win32_Process
17.3 Prozesse (entfernt) beenden
17.3.1 Prozesse beenden mit WScript.Shell
17.3.2 Prozesse beenden mit Win32_Process
17.4 Fragen und Aufgaben
18 Scripting der Gruppenrichtlinien
18.1 Informationen über ein einzelnes Gruppenrichtlinienobjekt
18.1.1 Suche nach einem GPO
18.1.2 Informationen über ein GPO
18.1.3 Verknüpfungen auflisten
18.1.4 Das komplette Skript
18.2 Alle Gruppenrichtlinien und ihre Verknüpfungen auflisten
18.3 Eine Gruppenrichtlinie für einen Container auflisten
18.4 Eine Gruppenrichtlinie mit einem AD-Container verknüpfen
18.5 Eine Gruppenrichtlinienverknüpfung löschen
18.6 Eine Gruppenrichtlinie löschen
18.7 Sicherungskopien von Gruppenrichtlinien anlegen
18.8 Sicherungskopien einer Gruppenrichtlinie auflisten
18.9 Wiederherstellung von Gruppenrichtlinien
18.10 Weitere Möglichkeiten
18.11 Fragen und Aufgaben
19 Scripting-Sicherheit
19.1 Bedrohungen durch WSH-Skripte
19.2 Schutz vor bösen Skripten
19.2.1 Globale WSH-Deaktivierung
19.2.2 Sperrung auf Skriptdateiebene
19.2.3 WSH-Skripte signieren
19.2.4 Skriptkontrolle durch Richtlinien für Softwareeinschränkungen
19.3 Schutz vor dem Einblick in den Quellcode
19.4 Ein Skript unter einem anderen Benutzerkontext starten
19.4.1 Benutzerwechsel für ein komplettes Skript
19.4.2 Benutzerwechsel im Skriptablauf
19.5 Fragen und Aufgaben
20 Windows PowerShell (WPS) 5.0
20.1 Vergleich zwischen WSH und PowerShell
20.2 Voraussetzungen und Installation
20.3 PowerShell-Werkzeuge
20.4 PowerShell-Commandlets
20.5 PowerShell-Pipelines
20.6 Ausgaben
20.7 Navigation in Containern
20.8 Hilfe zur PowerShell
20.9 PowerShell-Skripte
20.9.1 PowerShell-Skript-Editoren
20.9.2 Ein Beispiel
20.9.3 Sprachkonstrukte
20.9.4 Skripte ausführen
20.10 Fernausführung von Befehlen (Remoting)
20.11 Zusatzkomponenten und Klassen nutzen
20.12 Zusätzliche PowerShell-Module mit weiteren Commandlets
20.12.1 Module manuell installieren
20.12.2 Module automatisch herunterladen und installieren (ab PowerShell 3.0)
20.12.3 Module auflisten
20.12.4 Module laden
20.13 COM-Komponenten, die man auch im WSH mit VBScript nutzen kann
20.14 .NET-Klassen
20.15 WMI-Klassen
20.15.1 Abruf von WMI-Objektmengen
20.15.2 Fernzugriffe
20.15.3 Filtern und abfragen
20.15.4 Filtern mit Get-WmiObject
20.15.5 Zugriff auf einzelne WMI-Objekte
20.15.6 WQL-Abfragen
20.15.7 Ermittlung der Mitglieder des WMI-Objekts
20.15.8 Umgang mit WMI-Datumsangaben
20.15.9 Zugriff auf Mitglieder von WMI-Klassen
20.15.10 Statische Klassenmitglieder
20.15.11 Werte setzen in WMI-Objekten
20.15.12 Methodenaufrufe mit Invoke-WmiMethod
20.15.13 Liste aller WMI-Klassen
20.15.14 Neue WMI-Instanzen erzeugen
20.15.15 Weitere Möglichkeiten
20.16 PowerShell-Commandlets in Aktion
20.17 PowerShell-Skripte aus der Praxis
20.17.1 Leere Ordner löschen
20.17.2 Fotos nach Aufnahmedatum sortieren
20.17.3 Papierkorb leeren
20.17.4 Freigaben anlegen
20.17.5 Netzwerkkonfiguration
20.17.6 Massenanlegen von Active-Directory-Benutzerkonten
20.17.7 Massenanlegen von IIS-Websites
20.17.8 Massenanlegen von Registry-Schlüsseln
20.17.9 Softwareinstallation
20.17.10 Virtuelles System in Hyper-V anlegen
21 Wie geht es weiter?
A Eingebaute Funktionen in VBScript
A.1 Numerische Funktionen
A.2 Formatierungsfunktionen
A.3 Zeichenkettenfunktionen
A.4 Datums-/Uhrzeitfunktionen
A.5 Array-Funktionen
A.6 Funktionen zur Arbeit mit COM-Klassen
A.7 Systemfunktionen und Ein-/Ausgabe
A.8 Typprüfung und -umwandlung
A.9 Sonstige Funktionen
B Lösungen zu den Übungsaufgaben in diesem Buch
B.1 Lösungen zu Kapitel 1
B.2 Lösungen zu Kapitel 2
B.3 Lösungen zu Kapitel 3
B.4 Lösungen zu Kapitel 4
B.5 Lösungen zu Kapitel 5
B.6 Lösungen zu Kapitel 6
B.7 Lösungen zu Kapitel 7
B.8 Lösungen zu Kapitel 8
B.9 Lösungen zu Kapitel 9
B.10 Lösungen zu Kapitel 10
B.11 Lösungen zu Kapitel 11
B.12 Lösungen zu Kapitel 12
B.13 Lösungen zu Kapitel 13
B.14 Lösungen zu Kapitel 14
B.15 Lösungen zu Kapitel 15
B.16 Lösungen zu Kapitel 16
B.17 Lösungen zu Kapitel 17
B.18 Lösungen zu Kapitel 18
B.19 Lösungen zu Kapitel 20
C Abkürzungsverzeichnis
D Quellen und weiterführende Literatur
Vorwort zur sechsten Auflage (2016)
Liebe Leserinnen, liebe Leser,
mittlerweile gibt es Windows 10 und Windows Server 2016. Aber den Verlag Addison-Wesley, bei dem dieses Buch zehn Jahre lang in fünf Auflagen erschienen ist, gibt es nicht mehr. Nun hat das Buch im Carl Hanser Verlag eine schöne neue Heimat gefunden.
Neu in dieser Auflage ist die Version 5.0 der Windows PowerShell. Zur PowerShell gibt es viele neue Skripting-Beispiele. Ebenso wurde das Buch auf Windows 10 und Windows Server 2016 aktualisiert. Bewusst sind aber nicht alle Bildschirmabbildungen mit diesen neuesten Betriebssystemen gemacht, da das Buch sich weiterhin als von der Betriebssystemversion unabhängiges Werk versteht, das auch Leser anspricht, die nicht die neueste Betriebssystemversion verwenden können oder wollen.
Viel Erfolg mit diesem Buch wünscht Ihnen
Dr. Holger Schwichtenberg
Essen, im Januar 2016
Vorwort zur fünften Auflage (2012)
Liebe Leserinnen, liebe Leser,
das Erscheinen von Windows 8 und Windows Server 2012 nehmen wir zum Anlass für eine erneute Aktualisierung dieses Buchs. Auch hier ist der Windows Script Host weiterhin enthalten und ein wichtiges Werkzeug für die automatisierte Systemadministration.
„Windows Scripting Lernen“ ist das letzte verbliebene Buch zum Windows Scripting Host (WSH) auf dem deutschen Markt.
Neben einigen Aktualisierungen zum WSH (insbesondere hinsichtlich der restriktiveren Vergabe administrativer Rechte in Windows 8) bietet diese 5. Auflage Ihnen vor allem mehr Inhalte zum Thema Windows PowerShell. Behandelt wird die PowerShell 3.0, die in Windows 8 und Windows Server 2012 enthalten ist und auf Windows 7 und Windows Server 2008 (inkl. R2) als Zusatz installierbar ist.
Ich danke Ihnen für Ihre Treue zu diesem Buch.
Dr. Holger Schwichtenberg
Essen, im September 2012
Vorwort zur vierten Auflage (2009)
Liebe Leserinnen, liebe Leser,
das Erscheinen von Windows 7 und Windows Server 2008 R2 nehmen wir zum Anlass für eine Aktualisierung des Buchs. Die weiterhin hohen Verkaufszahlen im Zeitalter von Vista und PowerShell zeigen, dass der Windows Scripting Host (WSH) in den Unternehmen noch aktiv genutzt wird, selbst wenn er in den letzten Jahren keine großen Veränderungen mehr erfahren hat.
Natürlich ist der Markt kleiner geworden. In Deutschland gab es einmal sechs Bücher zum WSH. Von diesen sind nur noch „Windows Scripting Lernen“ und der große Bruder „Windows Scripting“ übrig geblieben.
Mittelfristig wird die PowerShell größere Bedeutung als der WSH erlangen. In diesem Buch gebe ich Ihnen einen Ausblick auf die PowerShell 2.0. Aber dieser Ausblick ist hier bewusst kurz gewählt. In meinen Büchern „Windows Scripting (6. Auflage)“ und „Windows PowerShell 2.0 ‒ Das Praxishandbuch“ (beide bei Addison-Wesley erschienen) gehe ich genauer auf die PowerShell ein.
Ich danke Ihnen für Ihre Treue zu diesem Buch.
Dr. Holger Schwichtenberg
Essen, im Oktober 2009
Vorwort zur dritten Auflage (2007)
Liebe Leserinnen, liebe Leser,
auch mit Erscheinen von Windows Vista und der Windows PowerShell ist der Windows Script Host (WSH) noch aktuell, und er wird es auch für die nächsten Jahre noch bleiben. Windows Vista basiert entgegen früheren Ankündigungen noch nicht auf dem .NET Framework, sondern weiterhin komplett auf dem Component Object Model (COM) und noch älteren C/C++-Techniken. Der WSH und seine COM-basierten Scripting-Komponenten sind also das primäre Instrument für die automatisierte Systemadministration unter Vista.
Die Windows PowerShell, die Microsoft als gemeinsamen Nachfolger von WSH und Windows-Kommandozeilen-Shell ansieht, ist zwar mächtig und einfach, steht aber hinsichtlich des direkt nutzbaren Funktionsumfangs (in Form der Commandlets) noch weit hinter dem WSH zurück. Noch muss man hier in vielen Fällen in die Tiefen von .NET einsteigen. Erst mit kommenden Windows-Versionen und anderen Microsoft-Produkten wird es für die PowerShell einen Funktionsumfang geben, der auch Scripting-Einsteiger anspricht.
Grund genug also, diesem meistverkauften deutschen Scripting-Buch eine neue Auflage zu spendieren. In dieser Neuauflage finden Sie neben vielen kleinen Verbesserungen neue Texte zu folgenden Themen:
Scripting-Neuerungen in Windows Vista (Kapitel 19)
Einführung in die Windows PowerShell (Kapitel 20)
Prozessverwaltung per Skript, insbesondere die Kommunikation zwischen Skripten und Konsolenanwendungen (Kapitel 16)
Mehr Beispiele zur Verwendung von Text- und XML-Dateien als Ein- und Ausgabedateiformat für Skripte (in mehreren Kapiteln)
Beim Alten geblieben ist die Website, auf der Sie sich registrieren können für die Foren, Zusatz-Downloads und den Newsletter:
http://www.Windows-Scripting.de
Weiterhin viel Spaß beim Skripten wünscht Ihnen
Dr. Holger Schwichtenberg
Essen, im Mai 2007
Vorwort zur zweiten Auflage (2004)
Dass viele Administratoren sich ein Einsteigerbuch zum WSH wünschten, war mir klar, als ich dieses Buch Ende 2002 zusammen mit meinen drei Co-Autoren geschrieben habe. Dass wir damit die Position des Marktführers unter den Scripting-Büchern in Deutschland einnehmen würden, hätte ich nicht erwartet. Natürlich freuen wir uns sehr über die positive Resonanz.
Bereits Ende 2003 ist ein korrigierter Nachdruck erschienen, in dem wir die restlichen kleinen Tippfehler in dem Buch und auf der CD beseitigt haben. Nun liegt eine überarbeitete und erweiterte zweite Auflage vor Ihnen. Komplett neu in diesem Buch sind die Kapitel 16 („Scripting der Gruppenrichtlinien“) und 17 („Sicheres Scripting“).
Herzlich bedanken möchte ich mich bei allen Lesern, die durch ihr Feedback geholfen haben, diese zweite Auflage noch besser zu machen.
Ausdrücklich hinweisen möchte ich Sie auf die Website zu diesem Buch:
http://www.Windows-Scripting.de
Aktuell bietet Ihnen diese Website folgende Informationen und Dienste:
Umfangreiches Windows Scripting-Glossar
FAQ zum WSH
Diskussionsforum zum Windows Scripting (Fragen von registrierten Lesern werden von den Autoren dieses Buchs vorrangig beantwortet!)
Verzeichnis von Scripting-Komponenten
Klassenreferenz für die Windows Management Instrumentation (WMI)
Feedback-Fragebogen zu diesem Buch
Aktualisierungen zu den Skripten in diesem Buch (sofern sich technische Änderungen in Windows ergeben oder Verbesserungen von uns oder den Lesern gefunden werden)
Skriptarchiv mit über 200 weiteren WSH-Skripten
Scripting-News und -Newsletter
Und last, but not least: Informationen zu unseren Scripting-Schulungen und zum Support bei Fragen rund um den WSH.
Ich wünsche Ihnen nun viel Erfolg mit diesem Buch und würde mich freuen, Sie auf meiner Website begrüßen zu dürfen!
Dr. Holger Schwichtenberg
Essen, im Mai 2004
Vorwort zur ersten Auflage (2002)
WSH
Zur automatisierten Systemadministration ist der Windows Script Host (WSH) eine sehr mächtige Alternative gegenüber der schon etwas angestaubten Windows-Batch-Programmierung. Unsere Erfahrungen aus Scripting-Schulungen und Beratungsterminen in den letzten vier Jahren haben aber gezeigt, dass es vielen Administratoren schwerfällt, sich in die Welt des Scriptings einzuarbeiten ‒ oft auch gehemmt durch die Tatsache, dass das Scripting zum Bereich Programmierung/Softwareentwicklung gezählt wird.
Zielgruppe
Scripting ohne Vorkenntnisse
„Windows Scripting Lernen“ wendet sich an Administratoren ohne Programmierkenntnisse. Dieses Buch enthält eine schrittweise Einführung in die Entwicklung von Skripten. Auch ohne Vorerfahrung in der Programmierung lernen Sie durch dieses Buch die Möglichkeiten zur automatisierten Administration von Unternehmensnetzwerken mit dem Windows Script Host (WSH), Visual Basic Script und verschiedenen sogenannten COM-Komponenten kennen.
Methodik
Didaktischer Aufbau
Das Buch hat eine didaktische Struktur mit aufeinander aufbauenden Kapiteln. Bewusst wird darauf verzichtet, detaillierte Hintergründe sowie jede Möglichkeit und jede Option vorzustellen. Dieses Buch fokussiert auf das Wesentliche, um Ihnen einen leichten Einstieg in das Windows Scripting zu ermöglichen.
Einführung
Alle grundlegenden Konzepte der Programmierung wie Variablen, Fallunterscheidungen, Schleifen, Fehlerbehandlung und die Arbeit mit Komponenten, Klassen und Objekten werden von Grund auf eingeführt. Außerdem finden Sie eine ausführliche Erklärung zur Installation und Konfiguration der Skripte und Komponenten sowie Hinweise auf mögliche Probleme oder Fehlersituationen.
Die Beispiele sind bewusst einfach gehalten. Dennoch werden Sie lernen, alle wesentlichen Aufgaben der System- und Netzwerkadministration durch Skripte zu lösen. Der deutliche Schwerpunkt dieses Buches liegt nicht auf dem Scripting im Heimeinsatz, sondern auf dem Scripting in Unternehmensnetzwerken. Daher finden Sie hier auch Themen wie das Scripting des Active Directory, der Netzwerkkonfiguration und von Ereignisprotokollen.
Am Ende jedes Kapitels stehen Aufgaben, die Sie einsetzen können, um Ihr Wissen zu vertiefen und praktisch zu üben. Gewisse Wiederholungen sind in diesem Einsteigerbuch übrigens kein Fehler, sondern didaktische Absicht.
Wie Sie dieses Buch lesen sollten
Leseanleitung
Aufgrund des didaktischen Konzepts sollten Sie die ersten fünf Kapitel dieses Buches unbedingt sequenziell in der vorgegebenen Reihenfolge lesen. Ab Kapitel 6 werden dann verschiedene Gebiete des Scriptings aufgabenorientiert behandelt. Die Kapitel 6 bis 16 müssen Sie nicht notwendigerweise sequenziell lesen. Hier können Sie durchaus direkt zu den Kapiteln springen, die Sie besonders interessieren. Die von uns gewählte Reihenfolge beinhaltet aber eine Steigerung im Schwierigkeitsgrad.
Am Ende eines jeden Kapitels gibt es einen Aufgabenteil; die passenden Lösungen stehen zusammenhängend im Anhang, sodass das „Spicken“ etwas erschwert wird.
Weitere Unterstützung im WWW
Website
Als Leser dieses Buches haben Sie Zugriff auf einen zugangsbeschränkten Bereich der deutschen Windows Scripting-Website, die Sie unter http://www.Windows-Scripting.de finden. Ein Service dieser Website ist, dass Sie den Autoren dieses Buches verbliebene Fragen stellen können.
Der große Bruder „Windows Scripting“
Weiterführende Literatur
Im Buchhandel werden Sie einen „großen Bruder“ zu diesem Buch finden, der schon zwei Jahre länger auf dem Markt ist: „Windows Scripting“ geht parallel zu diesem „Windows Scripting Lernen“ bei Addison-Wesley in die dritte Auflage. Dieser Titel aus der WinTec-Reihe ist ein umfassendes Nachschlagewerk zu allen Bereichen der Skriptprogrammierung und richtet sich an Entwickler und Administratoren, die bereits Vorkenntnisse in mindestens einer Programmiersprache besitzen. Wenn Sie nach der Lektüre von „Windows Scripting Lernen“ noch Wissensdurst verspüren, dann sollten Sie zum großen Bruder greifen.
Dank
Mein herzlicher Dank gilt
meinen Co-Autoren Sven Conrad, Thomas Gartner und Oliver Scheer, die tatkräftig mitgeholfen haben, den umfangreichen Stoff aus dem „Windows Scripting“-Buch auf die „Lernen“-Reihe herunterzubrechen,
Ayşe Aruca und Georg Meindl für ihre kritischen Anmerkungen als Testleser dieses Buches,
meiner Korrektorin Astrid Schürmann, die wieder einmal mit hoher Präzision nicht nur die sprachlichen Fehler aus unserem Text entfernt, sondern uns auch auf inhaltliche Inkonsistenzen hingewiesen hat,
und meiner Lektorin Sylvia Hasselbach für ihre Geduld bei der doch langwierigen Geburt dieses Werks.
Ich wünsche Ihnen nun viel Erfolg mit diesem Buch.
Holger Schwichtenberg
Essen, im November 2002
Website für Leser
Zu diesem Buch gibt es eine eigene Website:
http://www.windows-scripting.de
Sie als Leser haben neben den öffentlichen Bereichen auch die Möglichkeit, auf einen geschützten Bereich zuzugreifen, der besondere Informationen enthält:
Downloads: die aktuellen Versionen der in diesem Buch abgedruckten Skripte sowie weitere Skripte und Codebeispiele
Verzeichnis
Inhalt
\Skripte
Alle Skripte aus dem Buch, geordnet nach Kapiteln
\Install
Erweiterungen, Komponenten, Sprachen und Tools für das Windows Scripting (zum Teil als Vollversionen, zum Teil als Demoversionen)
\Weitere Informationen
Dieses Verzeichnis enthält zusätzliche Dokumentationen zu Visual Basic Script, dem WSH und einigen der besprochenen Komponenten.
\Über den Autor
Informationen über den Autor dieses Buchs
Foren: Wenn Sie Fragen haben oder Ihre Meinung zu einem Thema dieses Buchs äußern möchten, dann können Sie hier auf Reaktionen anderer Nutzer hoffen.
Leser-Bewertung: Vergeben Sie Noten für dieses Buch und lesen Sie nach, was andere Leser von diesem Buch halten.
Bug-Report: Melden Sie hier Fehler, die Sie in diesem Buch gefunden haben! Hier können Sie auch nachlesen, welche Fehler anderen nach Drucklegung aufgefallen sind.
Newsletter: Alle registrierten Leser erhalten in unregelmäßigen Abständen einen Newsletter.
Der URL für den Zugang zum Leser-Portal lautet:
http://www.windows-scripting.de/leser
Bei der Anmeldung müssen Sie das Erstzugangskennwort Defiance Skies angeben (Defiance ist eine Science-Fiction-Serie).
Bitte beachten Sie, dass das Leser-Portal eine freiwillige, private Leistung des Autors ist, auf die es keinen Rechtsanspruch gibt.
Studienabschluss Diplom-Wirtschaftsinformatik an der Universität Essen
Promotion an der Universität Essen im Gebiet komponentenbasierter Softwareentwicklung
Seit 1996 selbstständig als unabhängiger Berater, Dozent, Softwarearchitekt und Fachjournalist
Leiter des Berater- und Dozententeams bei www.IT-Visions.de
Leitung der Softwareentwicklung im Bereich Microsoft/.NET bei der 5minds IT-Solutions GmbH & Co. KG (www.5minds.de)
Lehrbeauftragter an den Fachhochschulen in Münster und Graz
60 Fachbücher bei zahlreichen Verlagen und mehr als 800 Beiträge in Fachzeitschriften
Gutachter in den Wettbewerbsverfahren der EU gegen Microsoft (2006 ‒ 2009)
Ständiger Mitarbeiter der Zeitschriften iX (seit 1999), dotnetpro (seit 2000) und Windows Developer (seit 2010) sowie beim Online-Portal heise.de (seit 2008)
Regelmäßiger Sprecher auf nationalen und internationalen Fachkonferenzen (z. B. Microsoft TechEd, Microsoft Summit, Microsoft IT Forum, BASTA, BASTA-on-Tour, .NET Architecture Camp, Advanced Developers Conference, Developer Week, OOP, DOTNET Cologne, VS One, NRW.Conf, Net.Object Days, Windows Forum)
Zertifikate und Auszeichnungen von Microsoft:
Microsoft Most Valuable Professional (MVP)
Microsoft Certified Solution Developer (MCSD)
Thematische Schwerpunkte:
Microsoft .NET Framework, Visual Studio, C#, Visual Basic
.NET-Architektur/Auswahl von .NET-Technologien
Einführung von .NET Framework und Visual Studio/Migration auf .NET
Webanwendungsentwicklung mit IIS, ASP.NET und JavaScript sowie TypeScript
Verteilte Systeme, Webservices, Enterprise .NET
Relationale Datenbanken, XML, Datenzugriffsstrategien
Objektrelationales Mapping (ORM), insbesondere ADO.NET Entity Framework
Windows PowerShell (WPS) und Windows Management Instrumentation (WMI)
Ehrenamtliche Community-Tätigkeiten:
Vortragender für die International .NET Association (INETA)
Betrieb diverser Community-Websites www.dotnetframework.de, www.entwickler-lexikon.de, www.windows-scripting.de, www.aspnetdev.de u. a.
Weblog: www.dotnet-doktor.de
Kontakt: [email protected] sowie Telefon 02 01 64 95 90-0
Schreibweisen in diesem Buch
Alle Skripte sind in nichtproportionaler Schrift geschrieben. Damit Sie Befehle von Fachbegriffen unterscheiden können, sind alle Erwähnungen von Befehlen im Text auch mit nichtproportionaler Schrift ausgezeichnet.
Kursiv gesetzt sind Dateinamen und Pfadangaben sowie Bildschirmelemente wie Registerkarten, Menüeinträge und Schaltflächen.
Wichtige Hinweise und Einschübe sind mit einem grauen Kasten hinterlegt.
Zusätzlich werden vier Symbole verwendet, um Ihre Aufmerksamkeit zu wecken:
Das Achtung-Symbol warnt vor Bugs oder möglichen Schwierigkeiten.
Interessante Hintergrundinformationen werden durch das Hinweis-Symbol gekennzeichnet.
Das Website-Symbol verweist auf die Buch-Website:
www.windows-scripting.de
Dieses Symbol steht für Tipps, die Sie schneller zum Ziel bringen können oder Ihnen helfen, Schwierigkeiten zu vermeiden.
Hinweise zu den Listings
Alle Beispiele in diesem Buch sind in Visual Basic Script geschrieben und im Windows Script Host lauffähig. Als Testplattform wurden der Windows Script Host Version 5.7/5.8 und Visual Basic Script 5.7/5.8 auf Windows XP, Windows Vista, Windows 7, Windows 10, Windows Server 2003 R2, Windows Server 2008 R2, Windows Server 2012 R2 und Windows Server 2016 verwendet.
Jedes Listing beginnt mit einem Listing-Header. Darin finden Sie folgende Informationen:
HINWEIS: Wenn Skripte bei Ihnen nicht laufen, beachten Sie folgende Hinweise:
Stellen Sie sicher, dass Sie den WSH 5.7 oder 5.8 und VBScript 5.7 oder 5.8 installiert haben.
Vergewissern Sie sich, dass Sie die verwendeten Komponenten in den aktuellsten in diesem Buch beschriebenen Versionen installiert haben.
Prüfen Sie, ob es im Skript Angaben (Computernamen, Pfade, Benutzernamen) gibt, die in Ihrem Netzwerk möglicherweise nicht gültig sind.
Es ist möglich, dass Sie trotzdem Probleme haben, weil es diverse Unterversionen auf verschiedenen Windows-Versionen der Scripting-Bausteine gibt, die unterschiedliche Funktionen (und Bugs) haben. Im Zweifel stellen Sie bitte eine Frage auf der Leser-Website.
Lernziele
Dieses Kapitel erklärt einige grundlegende Begriffe zum Windows Scripting und zeigt Ihnen schrittweise die Erstellung von zwei einfachen Skripten auf.
1.1 Der Windows Script HostDOS-Batch
Microsoft hat die automatisierte Systemadministration lange vernachlässigt. Die Windows-Batch-Kommandozeilensprache ist nicht nur kompliziert, sondern auch nicht mächtig genug für viele Aufgaben der Systemadministration. Die Lücke wurde von Drittanbietern gefüllt, die sich aber mangels Bekanntheit und Marktmacht nicht durchsetzen konnten. Dieses fehlende Durchsetzungsvermögen hatte auch die negative Konsequenz, dass es kaum vorgefertigte Automatisierungslösungen gab.
WSH
Ende der Neunzigerjahre hat Microsoft mit dem Windows Script Host (WSH) endlich eine Alternative zur Windows-Kommandozeilenprogrammierung veröffentlicht. Der WSH ist Teil der sogenannten Active-Scripting-Architektur, zu der auch das Scripting im Internet Explorer und die Active Server Pages (ASP) im Internet Information Server (IIS) sowie zahlreiche andere Microsoft-Produkte gehören. In diesem Einsteigerbuch wird aber nur der WSH behandelt. Mehr über andere Scripting-Hosts und die Gesamtarchitektur erfahren Sie in [].
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!
Lesen Sie weiter in der vollständigen Ausgabe!