Hörenswert #88: Dark Forest - Oak, Ash & Thorn

· · · 0 Kommentare

Link zu Bandcamp

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".


Windows-Drucker mit PowerShell anhalten

· · · 0 Kommentare

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.


Hörenswert #87: U.D.O. - Man and Machine

· · · 0 Kommentare

Link zu Youtube

"Man and Machine" ist einer meiner U.D.O.-Lieblingssongs, der sich live auf Grund des Schlagzeug und Gitarre-Starts zu einem brachialen Monster entwickelt.


Perl setzt bei regulären Ausdrücken Treffer-Variablen nicht zurück

· · · 0 Kommentare

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.


Hörenswert #86: Fish - Just Good Friends feat. Sam Brown

· · · 0 Kommentare

Link zu Youtube

Ein wunderschöner Song, bei dem ich es nie verstanden habe, warum er nicht zu Begeisterungsstürmen und Verkaufserfolgen geführt hat: Fish und Sam Brown im Duett  ... hätte m.E. eigentlich die Hitparaden stürmen müssen.