Zu den Bands, die älter klingen als sie sind, gehören Dark Forest aus England. Mit “Ridge And Furrow” erscheint die Tage gerade der Nachfolger zu “Oak, Ash & Thorn”.
Um einen Drucker unter Windows anzuhalten, genügt ein PowerShell-Befehl, welcher als Administrator ausgeführt werden muss:
PS C:\> (Get-WmiObject Win32_Printer -Filter "Name='Microsoft Print to PDF'").Pause()
Um den “Angehalten”-Zustand wieder aufzuheben, muß lediglich “Pause” durch “Resume” ersetzt werden:
PS C:\> (Get-WmiObject Win32_Printer -Filter "Name='Microsoft Print to PDF'").Resume()
Als Parameter benötigt wird der Name des Druckers, im Beispiel “Microsoft Print to PDF” - der interessanterweise auch im Zustand “Angehalten” weiterhin direkt PDFs erzeugt.
Werden z.B. innerhalb einer Schleife verschiedene Elemente mit Hilfe eines regulären Ausdrucks ausgewertet, so werden im Falle eines Nicht-Treffers die Treffer-Variablen nicht zurückgesetzt.
use strict;
use warnings;
my @albums = (
'The Phantom Agony',
'Design Your Universe',
'The Holographic Principle'
);
foreach my $album (@albums) {
$album =~ /(Universe)/;
if (defined $1) { print "match: $1 -> '$album'\n"; }
}
Auf den ersten Blick wäre zu erwarten, daß lediglich eine Zeile als Ergebnis ausgegeben wird, tatsächlich sind dies aber zwei:
match: Universe -> 'Design Your Universe'
match: Universe -> 'The Holographic Principle'
Die Ursache liegt in der überhaupt nicht durchgeführten Überprüfung des Ergebnisses des regulären Ausdrucks, die korrekt so aussehen muss:
use strict;
use warnings;
my @albums = (
'The Phantom Agony',
'Design Your Universe',
'The Holographic Principle'
);
foreach my $album (@albums) {
if ($album =~ /(Universe)/) {
print "match: $1 -> '$album'\n"; }
}
Dann erscheint auch - wie ursprünglich erwartet - als Ergebnis nur eine Zeile:
match: Universe -> 'Design Your Universe'
Notiz an mich selbst: eine korrekte Behandlung von Abfrageergebnissen erspart eine aufwendige Fehlersuche.

