Scripts

    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.

    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.

    Master-Image von Windows 10 auf PCs verteilen mit der baramundi Management Suite

    Windows 10 über OS-Clone verteilen.Microsoft empfiehlt Unter­nehmen das In-Place-Upgrade für die Umstel­lung auf Windows 10. Dieses eig­net sich jedoch nicht für alle Bereit­stel­lungen, so dass die unbe­auf­sichtigte Instal­lation oder das Cloning weiter ihre Berech­tigung haben. baramundi automatisiert das Erstel­len und das Deployment von Clones.*

    Microsoft Script Explorer: Scripts und How-tos für Powershell finden

    Für Powershell existieren mittlerweile zahlreiche Ressourcen, seien es Code-Beispiele, Tutorials oder wiederverwendbare Module. Sie verteilen sich aber auf viele verschiedene Orte, sei es bei Microsoft selbst, auf Community-Websites oder auf firmeninterne Repositories. Der kostenlose Microsoft Script Explorer for Windows Powershell soll helfen, sich in dieser Unübersichtlichkeit zu orientieren und passenden Code sowie Anleitungen zu finden.

    Wo läuft ein Script: lokal, in einer VM oder auf dem Terminal-Server?

    Wenn sich ein Script auf einer Workstation anders verhalten soll als auf einem Server, oder auf einer physikalischen Maschine anders als in einer VM, dann muss man zwangsläufig während der Laufzeit herausfinden, in welcher Umgebung es ausgeführt wird. Besonders Batch-Dateien bieten zu diesem Zweck keine geeignete Mittel an, am ehesten eignen sich eventuell vorhandene eindeutige Umgebungsvariablen. Einfacher und verlässlicher funktioniert es mit dem kostenlosen MachineTypeCheck von Gridmetric.

    Mails aus Batch-Dateien verschicken mit Blat

    Es gehört zum Standardrepertoire von Monitoring-Tools, dass sie beim Auftreten bestimmter Ereignisse Mails an den Admin versenden. Auch die Ereignisanzeige von Windows ist dazu in der Lage. Darüber hinaus kann es aber auch notwendig sein, dass man Nachrichten aus eigenen Scripts heraus versendet. Windows bietet kein Kommandozeilen-Tool, das diese Aufgabe in Batch-Dateien übernehmen kann. Das Open-Source-Programm Blat füllt die Lücke.

    Profile in PowerShell: Module und Funktionen laden, Variablen setzen

    Powershell-LogoFast jeder Kommandointerpreter bietet die Möglichkeit, gleich beim Start eine vom Benutzer gewünschte Konfiguration zu laden und sich somit an individuelle Vorgaben anzupassen. Das gilt auch für die PowerShell, die gleich mehrere Profildateien ausliest, um Einstellungen für verschiedene Geltungsbereiche zu übernehmen. Zulässig ist praktisch alles, was die PowerShell ausführen kann.

    Microsoft startet TechNet Gallery: kostenlose Admin-Scripts

    Microsoft startete TechNet Gallery, ein Community-Portal für Scripts und Tools, die durchwegs kostenlos heruntergeladen werden können. Da es sich um eine Weiterentwicklung des TechNet Script Center handelt, enthält es bereits eine Vielzahl von Ressourcen. Die Gallery fügt diesen noch anwendungsspezifische Tools hinzu, unter anderem für App-V und die System-Center-Produkte.

    Datum in Batch-Dateien verarbeiten und Wochentag ermitteln

    Hin und wieder stellt sich das Problem, dass in Batchdateien Teile des aktuellen Datums benötigt werden, um sie in Zeichenketten zu verwenden. Das gängigste Beispiel dafür ist das Erzeugen von Dateinamen, etwa für Backups, so dass sich ihr Erstellungsdatum aus dem Namen ablesen lässt. Während sich die numerischen Informationen relativ einfach auslesen lassen, stoßen die die reinen Batch-Mittel bei der Ermittlung des Wochentags an ihre Grenzen.

    NirCmd: zusätzliche Befehle für cmd.exe und Batch-Dateien

    Der Befehlssatz des Windows-eigenen Kommandoprozessors ist bekanntlich nicht beeindruckend. Daran dürfte sich vermutlich nicht viel ändern, denn Microsoft setzt für fortgeschrittenes Scripting auf Powershell. Für viele Aufgaben reicht es jedoch, wenn man herkömmliche Batch-Dateien um einzelne Befehle ergänzen kann, die ihnen etwa erlauben, Prozesse, Energiesparmodi oder eine Reihe von Systemkomponenten zu verwalten. Diese Aufgabe übernimmt das kostenlose Tool NirCmd.