Als Administratoren ihre Arbeit noch ausschließlich an der Kommandozeile verrichteten, konnten sie die gewöhnlichen Nutzer schwer damit beeindrucken, dass sie endlos lange Reihen von kryptischen Buchstaben- und Zeichenkombinationen, etwa in der Form "(\d{1,4}\.){4}(\d{1,4})", eingaben, wodurch sich dann wie von Zauberhand Einträge in den Textdateien veränderten.
Aber auch wenn die Systembetreuer heute einen Großteil ihrer Arbeit mit grafischen Werkzeugen verrichten, die eine entsprechend komfortable Oberfläche zur Verfügung stellen, kann der Einsatz der regulären Ausdrücke (auch als "Regex" bezeichnet) die Arbeit deutlich erleichtern. Das gilt ganz besonders dann, wenn Aufgaben durch den Einsatz von PowerShell-Skripten automatisiert und vereinfacht werden sollen.
Haben Sie schon einige PowerShell-Skripte selbst entwickelt oder auch nur eingesetzt, sind Sie in der Regel bereits mit den regulären Ausdrücken in Kontakt gekommen – auch wenn Ihnen das vielleicht gar nicht so bewusst war. Das folgende Beispiel verdeutlicht dies sehr schön:
$Ein_Array = @('etwasnr1','etwasnr2','nochwas')
$Ein_Array | Where-Object {$_ -match 'etwas'}
Hier legen wir zunächst ein Array von Strings an und starten dann eine Abfrage, die nur die zwei ersten Elemente des Arrays anzeigt, weil das dritte Element das Muster "etwas" nicht beinhaltet. Der Operator "-match" kann auch ohne das Cmdlet "Where-Object" zum Einsatz kommen. So gibt der Aufruf von:
'etwasnr1' -match 'etwas'
die Ausgabe "True" zurück, das gesuchte Muster wurde also in dem String gefunden, während der Aufruf von:
'etwasnr1' -match 'nichts'
nur folgerichtig "False" ausgibt. Ein weiterer Operator, der ebenfalls mit regulären
...Der komplette Artikel ist nur für Abonnenten des ADMIN Archiv-Abos verfügbar.