Perl

ppm-local

9. Dezember 2015 · Downloads · andreas · Kein Kommentar

ppm-local is a Perl-script to create a local copy of the ActiveState Perl Package Manager repository.

Weiterlesen


Installation des vSphere SDK for Perl Package unter Debian

17. November 2014 · Betriebssysteme · andreas · Kein Kommentar

Debian gehört nicht zu den standardmäßig unterstützten Plattformen für den Betrieb des vSphere SDK for Perl. Damit es trotzdem läuft, sind ein paar kleine Anpassungen nötig:

Als erstes sollte die im Paket enthaltene und zur Installation verwendete Datei “vmware-install.pl” modifiziert werden, welche im Zuge der Installation das verwendete Betriebssystem ermittelt und somit auch die zu verwendenden Systemwerkzeuge festlegt.

Nach einem

vi vmware-install.pl

reicht es, nach dem String “ubuntu” zu suchen und dessen zweites Vorkommen durch “debian” zu ersetzen.

Anschließend müssen noch die fehlenden Pakete

Archive::Zip 1.28 or newer
Crypt::SSLeay 0.55 or newer
Class::MethodMaker 2.10 or newer
HTML::Parser 3.60 or newer
Data::Dump 1.15 or newer
SOAP::Lite 0.710.08 or newer
URI 1.37 or newer
XML::SAX 0.16 or newer
XML::NamespaceSupport 1.09 or newer
XML::LibXML::Common 0.13 or newer
XML::LibXML 1.63 or newer
LWP 5.805 or newer
LWP::Protocol::https 5.805 or newer

nachinstalliert werden, damit die benötigten Abhängigkeiten erfüllt sind, was ein

apt-get install libssl-dev libarchive-zip-perl libcrypt-ssleay-perl libclass-methodmaker-perl libhtml-parser-perl libdata-dump-perl libsoap-lite-perl libxml-sax-perl libxml-libxml-perl libtime-duration-parse-perl

erledigt. Debian konform sollten die ausführbaren Dateien im letzten Schritt statt nach “/usr/bin” in das Verzeichnis “/opt/bin” kopiert werden.


Alle Jahre wieder

24. Dezember 2013 · Programmierung · andreas · Kein Kommentar

Allen Bloglesern ein entspanntes Weihnachtsfest und einen unfallfreien Rutsch in ein gesundes und glückliches 2014!

                                     +
                                     |
                                    / \
                                   ( i )
                                   /_ _\
                                  ( i i )
                                  /._ _.\
                                 ( i i i )
                                 /-._ _.-\
                                ( i i i i )
                                /'-._ _.-'\
                               ( i i i i i )
                                ^'-._ _.-'^ 
                                    |_| andi 2oo4

Anbei noch ein Tannebäumchen, das ich 2004 außer Konkurrenz in Perl für den Weihnachtsbaum-Wettbewerb von Thomas Walter erstellt habe.

Wer das entsprechende Skript habem möchte - bitteschön!

Download xmastree.rar (RAR-Archiv, 0.5kB)!


XML-Dateien aufhübschen

19. Dezember 2013 · Programmierung · andreas · Kein Kommentar

Genau wie Maschinen oft Probleme haben, etwas für Menschen problemlos verständliches zu verarbeiten, so blickt ein Mensch dann und wann auf den Inhalt einer maschinenlesbaren Datei und kann darin nur wenig erkennen.

Geht es um die Verarbeitung von XML-Dateien, so können wenige Zeilen Perl eine deutliche Verbesserung schaffen - zum Beispiel bei der Aufbereitung einer “SEPA Payments"-XML-Datei.

use strict;
use warnings;
use XML::LibXML;
use XML::LibXML::PrettyPrint;

my $file = $ARGV[0] || die "usage: pretty.pl inputfile.xml\n";

my $document = XML::LibXML->new->parse_file($file);
my $pp = XML::LibXML::PrettyPrint->new(

indent_string => chr(9),
element => {
compact => [qw/MsgId CreDtTm PmtInfId PmtMtd NbOfTxs CtrlSum Cd ReqdExctnDt Nm IBAN BIC ChrgBr EndToEndId InstdAmt Ustrd/],
}
);
$pp->pretty_print($document);

open(sFILE, '>pretty-' . $file);
print sFILE $document->toString;
close (sFILE);

Die hauptsächliche Arbeit übernimmt das Modul XML::LibXML::PrettyPrint, dessen Ausgabe mit Hilfe einer Reihe von Parametern an die jeweiligen Bedürfnisse angepasst werden kann.


ActivePerls "Set up gcc environment"-Meldung unterdrücken

5. August 2013 · Programmierung · andreas · Kein Kommentar

Neuere ActivePerl-Varianten nerven beim Start eines Skripts mit der Meldung “Set up gcc environment”, für deren Deaktivierung es auf den ersten Blick keinen offensichtlichen Schalter gibt.

Die Lösung bringt ein Blick in die Doku des Moduls “ActivePerl::Config”

perldoc ActivePerl::Config

welche die Umgebungsvariable “ACTIVEPERL_CONFIG_SILENT” ausspuckt, die genau diesen Zweck erfüllt:

ACTIVEPERL_CONFIG_SILENT

If set to a TRUE value (e.g. “1”), suppress warnings on STDERR when new compilation environments are set up. This happens when a supported compiler is detected that is different from the one that perl was originally built with.