Einführung in Powershell
Was ist Powershell?
Geschichte und Versionen
Unterschied zwischen PowerShell und anderen Skriptsprachen
Grundlagen der PowerShell-Syntax
- Zusammenfassung: Grundlagen der Powershell-Syntax
Variablen und Datentypen
- Variablen
- Umgebungsvariablen | Umgebungsvariablen in Powershell und Python
- Array – HashTable – Object – List (Comparison)
- Arrays
- HashTables
Powershell Objekte
- Powershell Objekte
- PowerShell: Objekte, Objekteigenschaften und –Methoden, Objektverarbeitung
- Powershell Pipeline zB Get-Process | Where-Object { $_.name -eq “iexplore” } | Format-Table ProcessName, WorkingSet
- Filtern von Objekten: Where-Object
- Sortieren von Objekten: Sort-Object
- Custom Object – PSCUSTOMOBJECT
Operatoren
- Arithmetische Operatoren
- Vergleichsoperatoren
- Logische Operatoren
- Bitweise Operatoren
Kontrollstrukturen
- Bedingte Anweisungen (if, elseif, else)
- Schleifen (for, foreach, while, do-while)
Funktionen und Skriptblöcke
- Funktionen erstellen und aufrufen
- Parameter in Funktionen
- Rückgabewerte und Ausgabewerte
- Skriptblöcke und Closure
Fehlerbehandlung und Debugging
- Fehlerbehandlung mit try, catch und finally
- Fehleraktionen und $ErrorActionPreference
- Debugging-Techniken (Breakpoints, Write-Debug, Write-Verbose)
Module und Skripte
- Module erstellen und importieren
- Skripte erstellen und ausführen
- Skriptparameter und Argumente
- Skript und Rückgabeparameter
Ausführung
Scheduling of PowerShell Scripts
Sonstige interessante Themen
Umgang mit Uhrzeiten
Zeitspanne / Zeitdifferenz
Dateien / Ordner – Filesystem
Best Practices und Sicherheitsaspekte
- Code-Organisation und -Struktur
- Kommentare und Dokumentation
- Sicherheitsaspekte (Ausführungsrichtlinien, Signierung von Skripten)
Spezialgebiete
Gebiet | Standard | Modul (falls notwendig) | Integrierte Version | Details |
---|---|---|---|---|
Active Directory | Nein | ActiveDirectory | N/A | |
DHCP | Nein | DhcpServer | N/A | |
SQL Server | Nein | SqlServer | N/A | |
Hyper-V | Nein | Hyper-V | N/A | |
Exchange Server | Nein | Exchange | N/A | |
SharePoint | Nein | SharePoint | N/A | |
Office 365 | Nein | MSOnline | N/A | |
Azure | Nein | Az | N/A | |
IIS (Internet Information Services) | Nein | WebAdministration | N/A | |
File Server | Ja | N/A | Windows Server 2008 R2 | |
DNS Server | Nein | DnsServer | N/A | |
Failover Clustering | Ja | N/A | Windows Server 2008 R2 | |
Windows Event Logs | Ja | N/A | PowerShell v2.0 | 1| |
Registry | Ja | N/A | PowerShell v2.0 | |
System Center | Nein | SystemCenter | N/A | |
Configuration Manager | Nein | ConfigurationManager | N/A | |
VMware vSphere | Nein | VMware.PowerCLI | N/A | |
Amazon Web Services (AWS) | Nein | AWSPowerShell | N/A | |
DSC (Desired State Configuration) | Ja | N/A | PowerShell v4.0 | |
Windows Storage Spaces | Ja | N/A | Windows Server 2012 | |
WMI (Windows Management Instrumentation) | Ja | N/A | PowerShell v2.0 | |
Office 365-Reporting | Nein | Office365DSC | N/A | |
Windows Server Backup | Nein | WindowsServerBackup | N/A | |
NFS (Network File System) | Ja | N/A | Windows Server 2012 R2 | |
DirectAccess | Nein | DirectAccessClientComponents | N/A | |
Windows Updates | Nein | PSWindowsUpdate | N/A | |
Remote Desktop Services | Nein | RemoteDesktopServices | N/A | |
Terminal Services | Nein | TerminalServices | N/A | |
SCOM (System Center Operations Manager) | Nein | OperationsManager | N/A | |
SMB (Server Message Block) | Ja | N/A | Windows Server 2012 | |
Windows Firewall | Ja | N/A | PowerShell v2.0 | |
SSIS (SQL Server Integration Services) | Nein | SqlServer | N/A | |
SSAS (SQL Server Analysis Services) | Nein | SqlServer | N/A | |
SSRS (SQL Server Reporting Services) | Nein | ReportingServicesTools | N/A | |
Power BI Server (On-Premises) | Nein | PowerBIRestApi | N/A | |
Power BI Cloud | Nein | MicrosoftPowerBIMgmt | N/A | |
Azure Form Recognizer | Nein | Az.CognitiveServices | N/A | |
Power Apps | Nein | Microsoft.PowerApps.PowerShell | N/A | |
Microsoft Flow (Power Automate) | Nein | Microsoft.PowerPlatform.Dataverse.Client | N/A |
Blog Posts
AUSFÜHRUNG VON SKRIPTEN UNTER POWERSHELL
PowerShell ist ein leistungsstarkes Tool für Systemadministratoren und Entwickler, das die Automatisierung komplexer Aufgaben und
@@Servername vs. SERVERPROPERTY(‘MachineName’)
Wenn ein Computer, der eine eigenständige Instanz von SQL Server hostet, umbenannt wird, ist es
Checksumme von Dateien ermitteln
Um die Checksumme einer Datei in Powershell ermitteln zu können, gibt es in Powershell 2
Fehlerhafte Pfade in Powershell
Sind Sie es leid, immer wieder auf den ärgerlichen “File not found”-Fehler in PowerShell zu
PowerShell-Skripte ausführen (Execution Policy)
PowerShell, eine wichtige Ressource für IT-Administratoren und Entwickler, ist ein leistungsfähiges und vielseitiges Werkzeug zur
Interaktion zwischen Hauptskript und Subskript
Die Problemstellung besteht darin, dass man manchmal mehrere Skripte erstellen möchte, um verschiedene Aufgaben zu