Scripts

Daten sortieren mit PowerShell

Sortieren in PowerShellWie die meisten Kommando-Interpreter und Script-Sprachen verfügt auch PowerShell über die Mittel, um den Inhalt von Dateien oder die Ausgabe von Befehlen zu sortieren. Sie beschränkt sich jedoch nicht auf die numerische oder alphabetische Sortierung von Zeilen, son­dern kann diese Aufgabe auch auf Basis von Objekteigenschaften erledigen.

Weiterlesen »

Reguläre Ausdrücke (RegEx) in PowerShell verwenden

Reguläre Ausdrücke in PowerShellDie Unterstützung für reguläre Ausdrücke gehört zum Pflichtprogramm für eine moderne Script-Sprache. PowerShell bietet mehrere Sprach­kon­strukte, die eine Verwendung von RegEx zu­lassen. Bei der syntaktischen Umsetzung orien­tierte sich Microsoft - anders als etwa bei Word - weitgehend an Perl, so dass für die meisten RegEx-erfahrenen Anwender der Lernaufwand gering bleibt.

Weiterlesen »

Ausstehende Reboots nach Updates prüfen mit PowerShell und reg.exe

Windows macht auf einen bevorstehenden Neustart aufmerksam.Die meisten Windows-Updates erfordern einen Neustart des Systems. Während dieser auf dem Client per Voreinstellung automatisch erfolgt und der Benutzer ausgiebig darauf hingewiesen wird, sind die Verhältnisse auf dem Server nicht immer so offensichtlich. Will man sich Klarheit über anstehende Reboots verschaffen, dann kann man dies (besonders unter Server Core) via Kommandozeile tun.

Weiterlesen »

Get-StartApps: Apps von der Startseite auslesen und starten mit PowerShell

Ansicht nach Name auf der Startseite von Windows 8.1Der mit Windows 8 eingeführte Startbildschirm brachte zumindest in puncto Übersichtlichkeit keine erkennbaren Fortschritte gegenüber dem alten Startmenü. PowerShell kann aber die dort vertretenen Anwendungen auflisten und filtern. Bei Bedarf lassen sich Programme anhand der angezeigten AppID auch direkt starten.

Weiterlesen »

Vergleichsoperatoren in PowerShell: -eq, -lt, gt, -contains, -like, -match

Für bedingte Anweisungen oder Schleifen muss man in der Lage sein, Werte zu vergleichen, um abhängig davon den weiteren Fortgang eines Scripts zu bestimmen. PowerShell bietet wie alle anderen fortgeschrittenen Script-Sprachen sowohl if/else und switch als auch die dazugehörigen Vergleichsoperatoren. Allerdings orientiert sich Microsoft damit nicht an populären Sprachen aus dem Web- und Windows-Umfeld.

Weiterlesen »

Strings in PowerShell: Ersetzen, Vergleichen, Zusammenfügen, Split, Substring

String-Manipulation in PowerShellDas Bearbeiten von Strings gehört zu den häufigsten Operationen in Script-Sprachen. Während althergebrachte Tools wie Batch-Dateien und VBScript solche Aufgaben oft nur umständlich bewältigen können, bietet PowerShell das ganze Inventar an Funktionen, die man etwa von Javascript oder PHP kennt.

Weiterlesen »

Where-Object: Daten filtern in PowerShell

Filter in PowerShellDas Ergebnis eines Cmdlets ist oft eine große Sammlung von Objekten, von denen man jedoch meistens nur einige braucht. Als Filter dient in diesen Fällen das Cmdlet Where-Object (Alias Where oder ?), an das man den Output über eine Pipe weiterleitet. Seit PowerShell 3.0 unterstützt es eine vereinfachte Syntax.

Weiterlesen »

Select-Object: Eigenschaften von Objekten in PowerShell filtern

Powershell-LogoPowerShell kann mit Hilfe seiner zahlreichen Cmdlets fast alle Systeminformationen auslesen. Häufig erhält man dabei mehr Daten, als man benötigt und vernünftig darstellen kann. Aus diesem Grund bietet PowerShell die Möglichkeit, ausgewählte Attribute von Objekten mit Hilfe von Select-Object zu extrahieren.

Weiterlesen »

Schleifen in PowerShell: For, Foreach, While, Do-Until, Continue, Break

Powershell-LogoWie die meisten prozeduralen Programmier­sprachen verfügt auch PowerShell über eine ganze Palette von Schleifenkonstruktionen sowie ergänzende Anweisungen zur Steuerung von Iterationen. Eine Besonderheit besteht darin, dass neben foreach noch Foreach-Object existiert, um über Elemente eines Arrays zu iterieren.

Weiterlesen »

Rollen und Features installieren mit PowerShell

Rollen und Features hinzufügenSeit Windows Server 2008 erbringt ein frisch installiertes System bekanntlich keine Dienste, vielmehr müssen die benötigten Funktionen über Rollen und Features erst aktiviert werden. Auf der GUI ist dafür der Server Manager zuständig. Diese Aufgabe lässt sich aber auch mit PowerShell automatisieren und auf Remote-PCs sowie auf VHDs anwenden.

Weiterlesen »