Windows PowerShell 5 und PowerShell Core 6 - Das Praxisbuch

Holger Schwichtenberg

Windows PowerShell 5 und PowerShell Core 6

Das Praxisbuch

2017

1231 Seiten

Format: PDF, ePUB, Online Lesen

E-Book: €  49,99

E-Book kaufen

E-Book kaufen

ISBN: 9783446453975

 

Inhalt

6

Vorwort zur sechsten Auflage

24

Über den Autor Dr. Holger Schwichtenberg

30

Teil A: PowerShell-Basiswissen

32

1 Erste Schritte mit der PowerShell

34

1.1 Was ist die PowerShell?

34

1.2 Windows PowerShell versus PowerShell Core

35

1.3 Geschichte der PowerShell

35

1.4 Motivation zur PowerShell

37

1.5 Betriebssysteme mit vorinstallierter PowerShell

40

1.6 Windows PowerShell herunterladen und auf anderen Windows-Betriebssystemen installieren

41

1.7 Die Windows PowerShell testen

45

1.8 PowerShell Core installieren und testen

54

1.9 Woher kommen die Commandlets?

57

1.10 PowerShell Community Extensions (PSCX) herunterladen und installieren

58

1.11 Den Windows PowerShell-Editor „ISE“ verwenden

60

2 Architektur der PowerShell

64

3 Einzelbefehle der PowerShell

68

3.1 Commandlets

68

3.2 Aliase

81

3.3 Ausdrücke

89

3.4 Externe Befehle

90

3.5 Dateinamen

91

4 Hilfefunktionen

94

4.1 Auflisten der verfügbaren Befehle

94

4.2 Volltextsuche

96

4.3 Erläuterungen zu den Befehlen

97

4.4 Hilfe zu Parametern

98

4.5 Hilfe mit Show-Command

100

4.6 Hilfefenster

101

4.7 Allgemeine Hilfetexte

103

4.8 Aktualisieren der Hilfedateien

104

4.9 Online-Hilfe

106

4.10 Fehlende Hilfetexte

107

4.11 Dokumentation der .NET-Klassen

108

5 Objektorientiertes Pipelining

112

5.1 Pipeline-Operator

112

5.2 .NET-Objekte in der Pipeline

113

5.3 Pipeline Processor

115

5.4 Pipelining von Parametern

116

5.5 Pipelining von klassischen Befehlen

119

5.6 Anzahl der Objekte in der Pipeline

120

5.7 Zeilenumbrüche in Pipelines

121

5.8 Zugriff auf einzelne Objekte aus einer Menge

121

5.9 Zugriff auf einzelne Werte in einem Objekt

123

5.10 Methoden ausführen

124

5.11 Analyse des Pipeline-Inhalts

126

5.12 Filtern

138

5.13 Zusammenfassung von Pipeline-Inhalten

141

5.14 „Kastrierung“ von Objekten in der Pipeline

142

5.15 Sortieren

143

5.16 Duplikate entfernen

144

5.17 Gruppierung

145

5.18 Berechnungen

147

5.19 Zwischenschritte in der Pipeline mit Variablen

147

5.20 Verzweigungen in der Pipeline

148

5.21 Vergleiche zwischen Objekten

150

5.22 Zusammenfassung

151

5.23 Praxisbeispiele

152

6 PowerShell-Skripte

154

6.1 Skriptdateien

154

6.2 Start eines Skripts

156

6.3 Aliase für Skripte verwenden

157

6.4 Parameter für Skripte

158

6.5 Skripte dauerhaft einbinden (Dot Sourcing)

159

6.6 Das aktuelle Skriptverzeichnis

160

6.7 Sicherheitsfunktionen für PowerShell-Skripte

160

6.8 Anforderungsdefinitionen von Skripten

163

6.9 Skripte anhalten

163

6.10 Versionierung und Versionsverwaltung von Skripten

164

7 PowerShell-Skriptsprache

166

7.1 Hilfe zur PowerShell-Skriptsprache

166

7.2 Befehlstrennung

167

7.3 Kommentare

167

7.4 Variablen

168

7.5 Variablenbedingungen

178

7.6 Zahlen

179

7.7 Zeichenketten (Strings)

181

7.8 Reguläre Ausdrücke

190

7.9 Datum und Uhrzeit

197

7.10 Arrays

198

7.11 ArrayList

201

7.12 Assoziative Arrays (Hash-Tabellen)

202

7.13 Operatoren

203

7.14 Überblick über die Kontrollkonstrukte

208

7.15 Schleifen

208

7.16 Bedingungen

213

7.17 Unterroutinen (Prozedur/Funktionen)

215

7.18 Eingebaute Funktionen

222

7.19 Fehlerbehandlung

222

7.20 Objektorientiertes Programmieren mit Klassen

230

8 Ausgaben

234

8.1 Ausgabe-Commandlets

234

8.2 Benutzerdefinierte Tabellenformatierung

237

8.3 Benutzerdefinierte Listenausgabe

239

8.4 Mehrspaltige Ausgabe

239

8.5 Out-GridView

240

8.6 Standardausgabe

242

8.7 Einschränkung der Ausgabe

244

8.8 Seitenweise Ausgabe

244

8.9 Ausgabe einzelner Werte

245

8.10 Details zum Ausgabeoperator

247

8.11 Ausgabe von Methodenergebnissen und Unterobjekten in Pipelines

251

8.12 Ausgabe von Methodenergebnissen und Unterobjekten in Zeichenketten

251

8.13 Unterdrückung der Ausgabe

252

8.14 Ausgaben an Drucker

253

8.15 Ausgaben in Dateien

253

8.16 Umleitungen (Redirection)

254

8.17 Fortschrittsanzeige

254

8.18 Sprachausgabe

255

9 Das PowerShell-Navigationsmodell

258

9.1 Einführungsbeispiel: Navigation in der Registrierungsdatenbank

258

9.2 Provider und Laufwerke

259

9.3 Navigationsbefehle

262

9.4 Pfadangaben

262

9.5 Beispiel

264

9.6 Eigene Laufwerke definieren

265

10 Fernausführung (Remoting)

266

10.1 RPC-Fernabfrage ohne WS-Management

267

10.2 Anforderungen an PowerShell Remoting

268

10.3 Rechte für PowerShell-Remoting

269

10.4 Einrichten von PowerShell Remoting

270

10.5 Überblick über die Fernausführungs-Commandlets

272

10.6 Interaktive Fernverbindungen im Telnet-Stil

273

10.7 Fernausführung von Befehlen

274

10.8 Parameterübergabe an die Fernausführung

278

10.9 Fernausführung von Skripten

279

10.10 Ausführung auf mehreren Computern

280

10.11 Sitzungen

281

10.12 Implizites Remoting

286

10.13 Zugriff auf entfernte Computer außerhalb der eigenen Domäne

287

10.14 Verwaltung des WS-Management-Dienstes

290

10.15 PowerShell Direct für Hyper-V

292

10.16 Praxisbeispiel zu PowerShell Direct

294

11 PowerShell-Werkzeuge

298

11.1 PowerShell-Standardkonsole

298

11.2 PowerShell Integrated Scripting Environment (ISE)

307

11.3 PowerShell Script Analyzer

317

11.4 PowerShell Analyzer

323

11.5 PowerShell Tools for Visual Studio

324

11.6 PowerShell Pro Tools for Visual Studio

325

11.7 NuGet Package Manager

326

11.8 PowerShell-Erweiterung für Visual Studio Code

326

11.9 PowerShell Web Access (PSWA)

329

11.10 Azure Cloud Shell

335

11.11 ISE Steroids

335

11.12 PowerShellPlus

336

11.13 PoshConsole

339

11.14 PowerGUI

340

11.15 PrimalScript

341

11.16 PowerShell Help

343

11.17 CIM Explorer for PowerShell ISE

343

11.18 PowerShell Help Reader

344

11.19 PowerShell Remoting

345

12 Windows PowerShell Core 5.1 in Windows Nano Server

346

13 PowerShell Core 6.x für Windows, Linux und MacOS

348

13.1 Funktionsumfang der PowerShell Core

349

13.2 PowerShell Core-Konsole

355

13.3 VSCode-PowerShell

356

13.4 Verwendung auf Linux und MacOS

357

13.5 PowerShell-Remoting via SSH

361

Teil B: PowerShell-Aufbauwissen

364

14 Verwendung von .NET-Klassen

366

14.1 Microsoft Developer Network (MSDN)

366

14.2 Erzeugen von Instanzen

367

14.3 Parameterbehaftete Konstruktoren

369

14.4 Initialisierung von Objekten

370

14.5 Nutzung von Attributen und Methoden

371

14.6 Statische Mitglieder in .NET-Klassen und statische .NET-Klassen

373

14.7 Generische Klassen nutzen

377

14.8 Zugriff auf bestehende Objekte

378

14.9 Laden von Assemblies

378

14.10 Objektanalyse

381

14.11 Auflistungen (Enumerationen)

381

14.12 Verknüpfen von Aufzählungswerten

382

15 Verwendung von COM-Klassen

384

15.1 Erzeugen von COM-Instanzen

384

15.2 Nutzung von Attributen und Methoden

385

15.3 Liste aller COM-Klassen

386

15.4 Holen bestehender COM-Instanzen

387

15.5 Distributed COM (DCOM)

387

16 Zugriff auf die Windows Management Instrumentation (WMI)

388

16.1 Einführung in WMI

388

16.2 WMI in der PowerShell

415

16.3 Open Management Infrastructure (OMI)

417

16.4 Abruf von WMI-Objektmengen

417

16.5 Fernzugriffe

418

16.6 Filtern und Abfragen

418

16.7 Liste aller WMI-Klassen

422

16.8 Hintergrundwissen: WMI-Klassenprojektion mit dem PowerShell-WMI-Objektadapter

423

16.9 Beschränkung der Ausgabeliste bei WMI-Objekten

427

16.10 Zugriff auf einzelne Mitglieder von WMI-Klassen

429

16.11 Werte setzen in WMI-Objekten

429

16.12 Umgang mit WMI-Datumsangaben

431

16.13 Methodenaufrufe

432

16.14 Neue WMI-Instanzen erzeugen

433

16.15 Instanzen entfernen

434

16.16 Commandlet Definition XML-Datei (CDXML)

435

17 Dynamische Objekte

438

17.1 Erweitern bestehender Objekte

438

17.2 Komplett dynamische Objekte

440

18 Einbinden von C# und Visual Basic .NET

442

19 Win32-API-Aufrufe

444

20 Benutzereingaben

448

20.1 Read-Host

448

20.2 Benutzerauswahl

449

20.3 Grafischer Eingabedialog

450

20.4 Dialogfenster

451

20.5 Authentifizierungsdialog

451

20.6 Zwischenablage (Clipboard)

453

21 Fehlersuche

456

21.1 Detailinformationen

456

21.2 Einzelschrittmodus

457

21.3 Zeitmessung

458

21.4 Ablaufverfolgung (Tracing)

459

21.5 Erweiterte Protokollierung aktivieren

460

21.6 Script-Debugging in der ISE

462

21.7 Kommandozeilenbasiertes Script-Debugging

462

22 Transaktionen

464

22.1 Commandlets für Transaktionen

464

22.2 Start und Ende einer Transaktion

465

22.3 Zurücksetzen der Transaktion

466

22.4 Mehrere Transaktionen

467

23 Standardeinstellungen ändern mit Profilskripten

468

23.1 Profilpfade

468

23.2 Ausführungsreihenfolge

470

23.3 Beispiel für eine Profildatei

470

23.4 Starten der PowerShell ohne Profilskripte

471

24 Digitale Signaturen für PowerShell-Skripte

472

24.1 Zertifikat erstellen

472

24.2 Skripte signieren

474

24.3 Verwenden signierter Skripte

475

24.4 Mögliche Fehlerquellen

476

25 Hintergrundaufträge („Jobs“)

478

25.1 Voraussetzungen

478

25.2 Architektur

479

25.3 Starten eines Hintergrundauftrags

479

25.4 Hintergrundaufträge abfragen

480

25.5 Warten auf einen Hintergrundauftrag

481

25.6 Abbrechen und Löschen von Aufträgen

481

25.7 Analyse von Fehlermeldungen

482

25.8 Fernausführung von Hintergrundaufträgen

482

25.9 Praxisbeispiel

483

26 Geplante Aufgaben und zeitgesteuerte Jobs

486

26.1 Geplante Aufgaben (Scheduled Tasks)

486

26.2 Zeitgesteuerte Jobs

490

27 PowerShell-Workflows

496

27.1 Ein erstes Beispiel

496

27.2 Unterschiede zu einer Function bzw. einem Skript

501

27.3 Einschränkungen bei Workflows

501

27.4 Workflows in der Praxis

503

27.5 Workflows in Visual Studio erstellen

510

28 Ereignissystem

528

28.1 WMI-Ereignisse

528

28.2 WMI-Ereignisabfragen

528

28.3 WMI-Ereignisse seit PowerShell 1.0

530

28.4 Registrieren von WMI-Ereignisquellen seit PowerShell 2.0

531

28.5 Auslesen der Ereignisliste

532

28.6 Reagieren auf Ereignisse

534

28.7 WMI-Ereignisse ab PowerShell- Version 3.0

536

28.8 Registrieren von .NET-Ereignissen

536

28.9 Erzeugen von Ereignissen

537

29 Datenbereiche und Datendateien

540

29.1 Datenbereiche

540

29.2 Datendateien

542

29.3 Mehrsprachigkeit/Lokalisierung

543

30 Desired State Configuration (DSC)

546

30.1 Grundprinzipien

547

30.2 DSC für Linux

547

30.3 Ressourcen

548

30.4 Verfügbare DSC-Ressourcen

548

30.5 Eigenschaften einer Ressource

551

30.6 Aufbau eines DSC-Dokuments

551

30.7 Commandlets für die Arbeit mit DSC

552

30.8 Ein erstes DSC-Beispiel

552

30.9 Kompilieren und Anwendung eines DSC-Dokuments

553

30.10 Variablen in DSC-Dateien

555

30.11 Parameter für DSC-Dateien

556

30.12 Konfigurationsdaten

557

30.13 Entfernen einer DSC-Konfiguration

560

30.14 DSC Pull Server

563

30.15 DSC-Praxisbeispiel 1: IIS installieren

571

30.16 DSC-Praxisbeispiel 2: Software installieren

572

30.17 DSC-Praxisbeispiel 3: Software deinstallieren

574

30.18 Realisierung einer DSC-Ressource

575

30.19 Weitere Möglichkeiten

576

31 PowerShell-Snap-Ins

578

31.1 Einbinden von Snap-Ins

578

31.2 Liste der Commandlets

582

32 PowerShell-Module

584

32.1 Überblick über die Commandlets

584

32.2 Modularchitektur

585

32.3 Module aus dem Netz herunterladen und installieren mit PowerShellGet

586

32.4 Module manuell installieren

593

32.5 Doppeldeutige Namen

593

32.6 Auflisten der verfügbaren Module

594

32.7 Importieren von Modulen

596

32.8 Entfernen von Modulen

599

33 Ausgewählte PowerShell-Erweiterungen

600

33.1 PowerShell-Module in Windows 7 und Windows Server 2008 R2

601

33.2 PowerShell-Module in Windows 8.0 und Windows Server 2012

602

33.3 PowerShell-Module in Windows 8.1 und Windows Server 2012 R2

604

33.4 PowerShell-Module in Windows 10 und Windows Server 2016

607

33.5 PowerShell Community Extensions (PSCX)

611

33.6 PowerShellPack

615

33.7 www.IT-Visions.de PowerShell Extensions

616

33.8 Quest Management Shell for Active Directory

617

33.9 Microsoft Exchange Server

618

33.10 System Center Virtual Machine Manager

619

33.11 PowerShell Management Library for Hyper-V (pshyperv)

620

33.12 Powershell Outlook Account Manager

621

33.13 PowerShell Configurator (PSConfig)

622

33.14 Weitere Erweiterungen

623

34 Delegierte Administration/Just Enough Administration (JEA)

624

34.1 JEA-Konzept

624

34.2 PowerShell-Sitzungskonfiguration erstellen

624

34.3 Sitzungskonfiguration nutzen

628

34.4 Delegierte Administration per Webseite

629

35 Tipps und Tricks zur PowerShell

630

35.1 Alle Anzeigen löschen

630

35.2 Befehlsgeschichte

630

35.3 System- und Hostinformationen

631

35.4 Anpassen der Eingabeaufforderung (Prompt)

632

35.5 PowerShell-Befehle aus anderen Anwendungen heraus starten

633

35.6 ISE erweitern

634

35.7 PowerShell für Gruppenrichtlinienskripte

635

35.8 Einblicke in die Interna der Pipeline-Verarbeitung

637

Teil C: PowerShell im Praxiseinsatz

640

36 Dateisystem

642

36.1 Laufwerke

643

36.2 Ordnerinhalte

648

36.3 Dateieigenschaften verändern

650

36.4 Eigenschaften ausführbarer Dateien

651

36.5 Kurznamen

653

36.6 Lange Pfade

653

36.7 Dateisystemoperationen

654

36.8 Praxisbeispiel: Zufällige Dateisystemstruktur erzeugen

655

36.9 Praxisbeispiel: Leere Ordner löschen

656

36.10 Einsatz von Robocopy

657

36.11 Dateisystemkataloge

660

36.12 Papierkorb leeren

661

36.13 Dateieigenschaften lesen

661

36.14 Praxisbeispiel: Fotos nach Aufnahmedatum sortieren

662

36.15 Datei-Hash

663

36.16 Finden von Duplikaten

664

36.17 Verknüpfungen im Dateisystem

666

36.18 Komprimierung

671

36.19 Dateisystemfreigaben

673

36.20 Überwachung des Dateisystems

684

36.21 Dateiversionsverlauf

685

36.22 Windows Explorer öffnen

686

36.23 Windows Server Backup

686

37 Festplattenverschlüsselung mit BitLocker

690

37.1 Übersicht über das BitLocker-Modul

691

37.2 Verschlüsseln eines Laufwerks

692

38 Dokumente

694

38.1 Textdateien

694

38.2 CSV-Dateien

695

38.3 Analysieren von Textdateien

698

38.4 INI-Dateien

701

38.5 XML-Dateien

702

38.6 HTML-Dateien

710

38.7 Binärdateien

710

39 Datenbanken

712

39.1 ADO.NET-Grundlagen

712

39.2 Beispieldatenbank

718

39.3 Datenzugriff mit den Bordmitteln der PowerShell

719

39.4 Datenzugriff mit den PowerShell-Erweiterungen

730

39.5 Datenbankzugriff mit SQLPS

733

39.6 Datenbankzugriff mit SQLPSX

733

40 Microsoft-SQL-Server-Administration

734

40.1 PowerShell-Integration im SQL Server Management Studio

735

40.2 SQL-Server-Laufwerk „SQLSERVER:“

736

40.3 Die SQLPS-Commandlets

739

40.4 Die SQL Server Management Objects (SMO)

741

40.5 SQLPSX

744

40.6 Microsoft-SQL-Server-Administration mit der PowerShell in der Praxis

752

41 ODBC-Datenquellen

758

41.1 ODBC-Treiber und -Datenquellen auflisten

759

41.2 Anlegen einer ODBC-Datenquelle

760

41.3 Zugriff auf eine ODBC-Datenquelle

761

42 Registrierungsdatenbank (Registry)

764

42.1 Schlüssel auslesen

764

42.2 Schlüssel anlegen und löschen

765

42.3 Laufwerke definieren

765

42.4 Werte anlegen und löschen

766

42.5 Werte auslesen

767

42.6 Praxisbeispiel: Windows-Explorer-Einstellungen

767

42.7 Praxisbeispiel: Massenanlegen von Registry-Schlüsseln

768

43 Computer- und Betriebssystemverwaltung

770

43.1 Computerinformationen

770

43.2 Versionsnummer des Betriebssystems

772

43.3 Zeitdauer seit dem letzten Start des Betriebssystems

772

43.4 BIOS- und Startinformationen

773

43.5 Windows-Produktaktivierung

773

43.6 Umgebungsvariablen

773

43.7 Schriftarten

776

43.8 Computername und Domäne

777

43.9 Herunterfahren und Neustarten

777

43.10 Windows Updates installieren

778

43.11 Wiederherstellungspunkte verwalten

782

44 Windows Defender

784

45 Hardwareverwaltung

786

45.1 Hardwarebausteine

786

45.2 Plug-and-Play-Geräte

788

45.3 Druckerverwaltung (ältere Betriebssysteme)

788

45.4 Druckerverwaltung (seit Windows 8 und Windows Server 2012)

789

46 Softwareverwaltung

792

46.1 Softwareinventarisierung

792

46.2 Installation von Anwendungen

795

46.3 Deinstallation von Anwendungen

796

46.4 Praxisbeispiel: Installationstest

796

46.5 Installationen mit PowerShell Package Management („OneGet“)

797

46.6 Versionsnummer ermitteln

800

46.7 Servermanager

801

46.8 Softwareeinschränkungen mit dem PowerShell-Modul „AppLocker“

812

47 Prozessverwaltung

818

47.1 Prozesse auflisten

818

47.2 Prozesse starten

819

47.3 Prozesse mit vollen Administratorrechten starten

820

47.4 Prozesse unter einem anderen Benutzerkonto starten

821

47.5 Prozesse beenden

822

47.6 Warten auf das Beenden einer Anwendung

823

48 Systemdienste

824

48.1 Dienste auflisten

824

48.2 Dienstzustand ändern

826

48.3 Diensteigenschaften ändern

827

49 Netzwerk

828

49.1 Netzwerkkonfiguration (ältere Betriebssysteme)

828

49.2 Netzwerkkonfiguration (ab Windows 8 und Windows Server 2012)

830

49.3 DNS-Client-Konfiguration

833

49.4 DNS-Namensauflösung

836

49.5 Erreichbarkeit prüfen (Ping)

838

49.6 Windows Firewall

839

49.7 Remote Desktop (RDP) einrichten

845

49.8 E-Mails senden (SMTP)

846

49.9 Auseinandernehmen von E-Mail-Adressen

848

49.10 Abruf von Daten von einem HTTP-Server

848

49.11 Praxisbeispiel: Linkprüfer für eine Website

850

49.12 Aufrufe von SOAP-Webdiensten

853

49.13 Aufruf von REST-Diensten

855

49.14 Aufrufe von OData-Diensten

857

49.15 Hintergrunddatentransfer mit BITS

858

50 Ereignisprotokolle (Event Log)

862

51 Leistungsdaten (Performance Counter)

866

51.1 Zugriff auf Leistungsindikatoren über WMI

866

51.2 Get-Counter

867

52 Sicherheitseinstellungen

870

52.1 Aktueller Benutzer

870

52.2 Grundlagen

871

52.3 Zugriffsrechtelisten auslesen

876

52.4 Einzelne Rechteeinträge auslesen

877

52.5 Besitzer auslesen

879

52.6 Benutzer und SID

879

52.7 Hinzufügen eines Rechteeintrags zu einer Zugriffsrechteliste

882

52.8 Entfernen eines Rechteeintrags aus einer Zugriffsrechteliste

885

52.9 Zugriffsrechteliste übertragen

886

52.10 Zugriffsrechteliste über SDDL setzen

887

52.11 Zertifikate verwalten

888

53 Optimierungen und Problemlösungen

892

53.1 PowerShell-Modul „TroubleshootingPack“

892

53.2 PowerShell-Modul „Best Practices“

896

54 Active Directory

898

54.1 Benutzer- und Gruppenverwaltung mit WMI

899

54.2 Einführung in System.DirectoryServices

900

54.3 Basiseigenschaften

911

54.4 Benutzer- und Gruppenverwaltung im Active Directory

913

54.5 Verwaltung der Organisationseinheiten

921

54.6 Suche im Active Directory

922

54.7 Navigation im Active Directory mit den PowerShell Extensions

929

54.8 Verwendung der Active-Directory-Erweiterungen von www.IT-Visions.de

930

54.9 PowerShell-Modul „Active Directory“ (ADPowerShell)

932

54.10 PowerShell-Modul „ADDSDeployment“

955

54.11 Informationen über die Active–Directory-Struktur

957

55 Gruppenrichtlinien

960

55.1 Verwaltung der Gruppenrichtlinien

961

55.2 Verknüpfung der Gruppenrichtlinien

962

55.3 Gruppenrichtlinienberichte

964

55.4 Gruppenrichtlinienvererbung

965

55.5 Weitere Möglichkeiten

966

56 Lokale Benutzer und Gruppen

968

56.1 Modul „Microsoft.PowerShell. LocalAccounts“

968

56.2 Lokale Benutzerverwaltung in älteren PowerShell-Versionen

970

57 Microsoft Exchange Server

972

57.1 Daten abrufen

972

57.2 Postfächer verwalten

973

57.3 Öffentliche Ordner verwalten

974

58 Internet Information Server (IIS)

976

58.1 Überblick

976

58.2 Navigationsprovider

978

58.3 Anlegen von Websites

980

58.4 Praxisbeispiel: Massenanlegen von Websites

981

58.5 Ändern von Website-Eigenschaften

984

58.6 Anwendungspool anlegen

984

58.7 Virtuelle Verzeichnisse und IIS-Anwendungen

985

58.8 Website-Zustand ändern

986

58.9 Anwendungspools starten und stoppen

986

58.10 Löschen von Websites

987

59 Virtuelle Systeme mit Hyper-V

988

59.1 Das Hyper-V-Modul von Microsoft

989

59.2 Die ersten Schritte mit dem Hyper-V-Modul

991

59.3 Virtuelle Maschinen anlegen

995

59.4 Umgang mit virtuellen Festplatten

1001

59.5 Konfiguration virtueller Maschinen

1004

59.6 Dateien kopieren in virtuelle Systeme

1008

59.7 PowerShell Management Library for Hyper-V (für ältere Betriebssysteme)

1010

60 Windows Nano Server

1014

60.1 Das Konzept von Nano Server

1014

60.2 Einschränkungen von Nano Server

1016

60.3 Varianten des Nano Servers

1018

60.4 Installation eines Nano Servers

1018

60.5 Docker-Image

1020

60.6 Fernverwaltung mit PowerShell

1020

60.7 Windows Update auf einem Nano Server

1023

60.8 Nachträgliche Paketinstallation

1023

60.9 Abgespeckter IIS unter Nano Server

1025

60.10 Nano-Serververwaltung aus der Cloud heraus

1026

61 Docker-Container

1028

61.1 Docker-Varianten für Windows

1029

61.2 Docker-Installation auf Windows 10

1030

61.3 Docker-Installation auf Windows Server 2016

1032

61.4 Installation von „Docker for Windows“

1033

61.5 Docker-Registries

1035

61.6 Docker-Images laden

1035

61.7 Container starten

1036

61.8 Container-Identifikation

1037

61.9 Container mit Visual Studio

1038

61.10 Befehle in einem Container ausführen

1040

61.11 Ressourcenbeschränkungen für Container

1042

61.12 Dateien zwischen Container und Host kopieren

1042

61.13 Dockerfile

1042

61.14 Docker-Netzwerke

1043

61.15 Container anlegen, ohne sie zu starten

1044

61.16 Container starten und stoppen

1044

61.17 Container beenden und löschen

1044

61.18 Images löschen

1045

61.19 Images aus Containern erstellen

1045

61.20 .NET Core-Container

1045

61.21 Images verbreiten

1048

61.22 Azure Container Service (ACS)

1050

62 Grafische Benutzeroberflächen (GUI)

1052

62.1 Einfache Nachfragedialoge

1052

62.2 Einfache Eingabe mit Inputbox

1054

62.3 Komplexere Eingabemasken

1055

62.4 Universelle Objektdarstellung

1057

62.5 WPF PowerShell Kit (WPK)

1058

62.6 Direkte Verwendung von WPF

1066

Teil D: Profiwissen – Erweitern der PowerShell

1068

63 Entwicklung von Commandlets in der PowerShell-Skriptsprache

1070

63.1 Aufbau eines skriptbasierten Commandlets

1070

63.2 Verwendung per Dot Sourcing

1072

63.3 Parameterfestlegung

1073

63.4 Fortgeschrittene Funktion (Advanced Function)

1079

63.5 Mehrere Parameter und Parametersätze

1081

63.6 Unterstützung für Sicherheitsabfragen (-whatif und -confirm)

1083

63.7 Kaufmännisches Beispiel: Test-CustomerID

1085

63.8 Erweitern bestehender Commandlets durch Proxy-Commandlets

1088

63.9 Dokumentation

1094

64 Entwicklung eigener Commandlets mit C#

1098

64.1 Technische Voraussetzungen

1099

64.2 Grundkonzept der .NET-basierten Commandlets

1100

64.3 Schrittweise Erstellung eines minimalen Commandlets

1102

64.4 Erstellung eines Commandlets mit einem Rückgabeobjekt

1110

64.5 Erstellung eines Commandlets mit mehreren Rückgabeobjekten

1112

64.6 Erstellen eines Commandlets mit Parametern

1116

64.7 Verarbeiten von Pipeline-Eingaben

1118

64.8 Verkettung von Commandlets

1121

64.9 Fehlersuche in Commandlets

1125

64.10 Statusinformationen

1128

64.11 Unterstützung für Sicherheitsabfragen (-whatif und -confirm)

1133

64.12 Festlegung der Hilfeinformationen

1135

64.13 Erstellung von Commandlets für den Zugriff auf eine Geschäftsanwendung

1139

64.14 Konventionen für Commandlets

1140

64.15 Weitere Möglichkeiten

1142

65 PowerShell-Module erstellen

1144

65.1 Erstellen eines Skriptmoduls

1144

65.2 Praxisbeispiel: Umwandlung einer Skriptdatei in ein Modul

1146

65.3 Erstellen eines Moduls mit Binärdateien

1146

65.4 Erstellen eines Moduls mit Manifest

1147

65.5 Erstellung eines Manifest-Moduls mit Visual Studio

1154

66 Hosting der PowerShell

1156

66.1 Voraussetzungen für das Hosting

1157

66.2 Hosting mit PSHost

1158

66.3 Vereinfachtes Hosting seit PowerShell 2.0

1161

Anhang A: Crashkurs „Objektorientierung“

1164

Anhang B: Crashkurs .NET

1172

B.1 Was ist das .NET Framework?

1174

B.2 Was ist .NET Core?

1175

B.3 Eigenschaften von .NET

1176

B.4 .NET-Klassen

1177

B.5 Namensgebung von .NET-Klassen -(Namensräume)

1177

B.6 Namensräume und Software-komponenten

1179

B.7 Bestandteile einer .NET-Klasse

1180

B.8 Vererbung

1181

B.9 Schnittstellen

1182

Anhang C: Literatur

1183

Anhang D: Weitere Informationen im Internet

1186

Anhang E: Abkürzungsverzeichnis

1188

Stichwortverzeichnis

1214

 

© 2009-2024 ciando GmbH