From Susan.Dittmar at gmx.de Tue Oct 4 03:09:40 2005 From: Susan.Dittmar at gmx.de (Susan Dittmar) Date: Tue, 4 Oct 2005 12:09:40 +0200 Subject: [Cologne-pm] Treffen am 12.10.2005... In-Reply-To: <20050930220006.1FDFA16F400A@tweety.intern.perl-ronin.de> References: <20050930220006.1FDFA16F400A@tweety.intern.perl-ronin.de> Message-ID: <20051004100940.GB29525@eureca.de> Hallo Ihr, > Das n?chste Treffen findet wie gewohnt statt am 2. Mittwoch des Monats, > also am 12.10.2005 Ich bin diesmal leider nicht dabei. Gru?, Susan From mike at lamertz.net Thu Oct 6 15:00:12 2005 From: mike at lamertz.net (Michael Lamertz) Date: Thu, 6 Oct 2005 22:00:12 UT Subject: [Cologne-pm] Treffen am 12.10.2005... Message-ID: <20051006220013.2FFC11C814B@tweety.intern.perl-ronin.de> Yo! Das n?chste Treffen findet wie gewohnt statt am 2. Mittwoch des Monats, also am 12.10.2005, in der Sansibar Trierer Str. 41 50674 K?ln ab ca. 18:30 Dies ist eine automatisch erzeugte Nachricht. Sollte mittlerweile auf der Liste ein anderer Termin verabredet worden sein, so ist diese Mail hinf?llig. From pagaltzis at gmx.de Thu Oct 6 15:38:14 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Fri, 7 Oct 2005 00:38:14 +0200 Subject: [Cologne-pm] Treffen am 12.10.2005... In-Reply-To: <20051006220013.2FFC11C814B@tweety.intern.perl-ronin.de> References: <20051006220013.2FFC11C814B@tweety.intern.perl-ronin.de> Message-ID: <20051006223814.GB18550@klangraum> * Michael Lamertz [2005-10-07 00:05]: > Yo! Yo! Wie du aussiehst weiss ich schon gar nicht mehr, ich glaub du fehlst noch ?fter als ich. %-) Susan hat sich ja abgemeldet. Kommt wer? Das letzte Mal waren wir immerhin noch zu viert? wenn?s jetzt drei w?ren, lohnt es die M?he schon kaum noch. Regards, -- Aristotle Pagaltzis // From cem.sakaryali at easi.de Thu Oct 27 05:08:35 2005 From: cem.sakaryali at easi.de (Cem Sakaryali) Date: Thu, 27 Oct 2005 14:08:35 +0200 (Westeuropäische Sommerzeit) Subject: [Cologne-pm] etwas OT: unix user id konvertieren in user Namen Message-ID: <46827.136.8.152.14.1130414915.squirrel@dergah> Hallo Leute, ich schreibe hier ein script um die Belegung der Festplatten zu kontrollieren. Dabei wird mit: my ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime,$ctime, $blksize,$blocks)= stat($i); #get the stat of the file seperat fuer jeden benutzer $TotalUsage{$uid}=$TotalUsage{$uid}+$size; berechnet. Leider ist $uid eine Nummer. Wie kann ich den Namen der User bekommen? Hier gibt es ein Name Server oder so.. fuer die user d.h. die user informationen sind nicht lokal in passwd gespeichert. passwd letzte Zeile: +::0:0::: Danke und Gruss Cem From uli at youam.net Thu Oct 27 05:33:08 2005 From: uli at youam.net (Uli Martens) Date: Thu, 27 Oct 2005 14:33:08 +0200 Subject: [Cologne-pm] etwas OT: unix user id konvertieren in user Namen In-Reply-To: <46827.136.8.152.14.1130414915.squirrel@dergah> References: <46827.136.8.152.14.1130414915.squirrel@dergah> Message-ID: <20051027123308.GE8117@ciara.youam.de> Moin On Thu, Oct 27, 2005 at 02:08:35PM +0200, Cem Sakaryali wrote: > berechnet. Leider ist $uid eine Nummer. Wie kann ich den > Namen der User bekommen? > > Hier gibt es ein Name Server oder so.. fuer die user d.h. die > user informationen sind nicht lokal in passwd gespeichert. Dazu gibt es in der libc die Funktion getpwuid(), die wohl auch mehr oder weniger eins zu eins nach Perl ?bertragen wurde. Woher die libc die Information bekommt ist eigentlich ihre Sache, ?blicherweise aus /etc/passwd oder so, wie es in /etc/nsswitch.conf konfiguriert ist (da bedeutet dann "files" ?blicherweise den Zugriff auf lokale files, mehr sollte in der Doku stehen) hth, Uli From cem.sakaryali at easi.de Thu Oct 27 05:51:01 2005 From: cem.sakaryali at easi.de (cem.sakaryali@easi.de) Date: Thu, 27 Oct 2005 14:51:01 +0200 Subject: [Cologne-pm] etwas OT: unix user id konvertieren in user Namen Message-ID: <51353.1130417461@WebMail.Space.Net> Danke Uli mit getpwuid hat es super funktioniert. Gruss Cem Uli Martens schrieb am Thu, 27 Oct 2005 14:33:08 +0200: > Moin > > On Thu, Oct 27, 2005 at 02:08:35PM +0200, Cem Sakaryali wrote: > > berechnet. Leider ist $uid eine Nummer. Wie kann ich den > > Namen der User bekommen? > > > > Hier gibt es ein Name Server oder so.. fuer die user d.h. die > > user informationen sind nicht lokal in passwd gespeichert. > > Dazu gibt es in der libc die Funktion getpwuid(), die wohl auch mehr > oder weniger eins zu eins nach Perl ?bertragen wurde. Woher die libc die > Information bekommt ist eigentlich ihre Sache, ?blicherweise aus > /etc/passwd oder so, wie es in /etc/nsswitch.conf konfiguriert ist (da > bedeutet dann "files" ?blicherweise den Zugriff auf lokale files, mehr > sollte in der Doku stehen) > > hth, > Uli > _______________________________________________ > Cologne-pm mailing list > Cologne-pm at pm.org > http://mail.pm.org/mailman/listinfo/cologne-pm -- | __| / _ \ / __|(_) | C e m S a k a r y a l i | _| | _ |\__ \| | | Eupener Str. 159, Geb. 107 |___||_| |_||___/|_| | D-50933 Koeln GERMANY Engineering GmbH | Tel: +49 221/650 496 12 Fax: 22 http://www.easi.de | mailto:cem.sakaryali at easi.de From mike at lamertz.net Mon Oct 31 15:00:06 2005 From: mike at lamertz.net (Michael Lamertz) Date: Mon, 31 Oct 2005 23:00:06 UT Subject: [Cologne-pm] Treffen am 09.11.2005... Message-ID: <20051031230006.304E81C815E@tweety.intern.perl-ronin.de> Yo! Das n?chste Treffen findet wie gewohnt statt am 2. Mittwoch des Monats, also am 09.11.2005, in der Sansibar Trierer Str. 41 50674 K?ln ab ca. 18:30 Dies ist eine automatisch erzeugte Nachricht. Sollte mittlerweile auf der Liste ein anderer Termin verabredet worden sein, so ist diese Mail hinf?llig. From pagaltzis at gmx.de Sat Nov 5 19:53:33 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Sun, 6 Nov 2005 04:53:33 +0100 Subject: [Cologne-pm] =?utf-8?q?Die_Homepage_zeigt_=22News=22_von_vor_zwei?= =?utf-8?q?_Jahren=2C_oder=2C_Ein_R=C3=BCckblick?= Message-ID: <20051106035332.GH4409@klangraum> Hallo zusammen, erstmal, Mike ? wolltest du mir nicht irgendwann anno dazumal ?nen CVS-Zugang geben? Naja, so wie es aussieht, k?nnen wir die Site mittlerweile ja einstampfen ? ein Mailinglistenarchiv sollte da vorn drauf, damit das bisschen Leben, was noch da ist, sich beobachtbar ?ussert, aber fast der gesamte Rest kann entfallen. Da waren ja sogar mal Pl?ne von wegen B?chertauschskript. Als noch was los war. Anscheinend sind die meisten Interessierten, die damals vom Linux Workshop in die Cologne Perl-Users her?bergewandert waren, entweder beim Umzug in die cologne.pm oder sonst zwischenzeitlich durch Interesseverlust abhanden gekommen. Das fiel also wohl irgendwann mangels Masse flach. (Bei den Niederrheinern sieht es unwesentlich besser aus.) Ausser Cem?s in weitgestreckten Abst?nden auflodernder Fragestellerei ist seit langer Zeit nichts mehr passiert. Pro Treffen karren vielleicht vier Leute an, ich eine Weile lang selten, Mike mittlerweile nie, und da wird weder von Perl noch sonst irgendwas entfernt relevantem geredet. Man trifft sich halt aus Gewohnheit. Von ?cologne.pm? ist eigentlich nicht viel ?brig, nur ein loses B?ndel Bekanntschaften, das daran erinnert. Gruss, -- Aristoteles ?Wer nicht ?ber sich selbst lachen kann, nimmt das Leben nicht ernst genug.? From mike at lamertz.net Sun Nov 6 07:30:13 2005 From: mike at lamertz.net (Michael Lamertz) Date: Sun, 6 Nov 2005 16:30:13 +0100 Subject: [Cologne-pm] Die =?iso-8859-1?Q?Homepa?= =?iso-8859-1?Q?ge_zeigt_=22News=22_von_vor_zwei_Jahren=2C_oder=2C_Ein_R?= =?iso-8859-1?Q?=FCckblick?= In-Reply-To: <20051106035332.GH4409@klangraum> References: <20051106035332.GH4409@klangraum> Message-ID: <20051106153013.GS4653@lamertz.net> Hi Aristoteles, On Sun, Nov 06, 2005 at 04:53:33AM +0100, A. Pagaltzis wrote: > Hallo zusammen, > > (deprimierende Fakten snipped) da gibt's irgendwie nix gegen zu sagen. Fakt ist fakt. Leider weiss ich auch nicht, wie man da 'raus kommen kann. Real-Life hat bei mir doof zugeschlagen, so dass ich mich rar bis inexistent gemacht habe. Mittlerweile gab's 2 Reorgs auf den Websites, so dass mein rsync-Job es nicht mehr tat, und ich es einfach versaeumt hatte, den Kram a. zu fixen und b. aktuell zu halten. Ich bin gerne bereit, bei Dave Cross die Uebertragung der Group-Leadership zu beantragen. Alternativ koennte ich die Administrativa neben dem Forward des O'Reilly auch wieder aufnehmen, falls mir zumindest die Dinge die bei den stattfindenden Treffen passieren zugesandt werden. Wie's Euch lieber ist. Es gibt 'ne Menge Subscribers auf der Liste, von denen noch nie jemand 'was gesagt hat. Irgendeine Motivation, sich zu subscriben, musste doch vorhanden sein... Gruss - M. -- Michael Lamertz | mlamertz at perl-ronin.de Sandstr. 122 | http://www.perl-ronin.de 50226 Frechen | +49 171 6900 310 (mobile) Germany | +49 2234 205947 (private) From cem.sakaryali at easi.de Sun Nov 6 13:38:27 2005 From: cem.sakaryali at easi.de (Cem Sakaryali) Date: Sun, 06 Nov 2005 22:38:27 +0100 Subject: [Cologne-pm] Sorting a hash by the hash value Message-ID: <1131313108.2512.29.camel@dervish> Habe ich im Netzt gefunden, m?glicherweise kann es f?r einen von euch N?tzlich sein. Gruss Cem ############################# Answer: First, sorting a hash by the hash key Sorting the output of a hash by the hash key is a pretty well-known recipe. It's covered in another Q&A article titled "How to sort a hash by the hash key". Sorting a hash by the hash value Sorting a hash by the hash value is a bit more difficult than sorting the hash by the key, but it's not too bad. It just requires a small "helper" function. This is easiest to demonstrate by example. Suppose we have a class of five students. Rather than give them names, we'll call them student1, student2, etc. Suppose these students just took a test, and we stored their grades in a hash (called associative arrays prior to the release of Perl 5) named grades. The hash definition might look like this: %grades = ( student1 => 90, student2 => 75, student3 => 96, student4 => 55, student5 => 76, ); If you're familiar with hashes, you know that the student names are the keys, and the test scores are the hash values. The key to sorting a hash by value is the function you create to help the sort command perform it's function. Following the format defined by the creators of Perl, you create a function I call a helper function that tells Perl how to sort the list it's about to receive. In the case of the program you're about to see, I've created two helper functions named hashValueDescendingNum (sort by hash value in descending numeric order) and hashValueAscendingNum (sort by hash value in ascending numeric order). Here's a program that prints the contents of the grades hash, sorted numerically by the hash value: #!/usr/bin/perl -w #----------------------------------------------------------------------# # printHashByValue.pl # # # # Copyright 1998 DevDaily Interactive, Inc. All Rights Reserved. # #----------------------------------------------------------------------# #----------------------------------------------------------------------# # FUNCTION: hashValueAscendingNum # # # # PURPOSE: Help sort a hash by the hash 'value', not the 'key'. # # Values are returned in ascending numeric order (lowest # # to highest). # #----------------------------------------------------------------------# sub hashValueAscendingNum { $grades{$a} <=> $grades{$b}; } #----------------------------------------------------------------------# # FUNCTION: hashValueDescendingNum # # # # PURPOSE: Help sort a hash by the hash 'value', not the 'key'. # # Values are returned in descending numeric order # # (highest to lowest). # #----------------------------------------------------------------------# sub hashValueDescendingNum { $grades{$b} <=> $grades{$a}; } %grades = ( student1 => 90, student2 => 75, student3 => 96, student4 => 55, student5 => 76, ); print "\n\tGRADES IN ASCENDING NUMERIC ORDER:\n"; foreach $key (sort hashValueAscendingNum (keys(%grades))) { print "\t\t$grades{$key} \t\t $key\n"; } print "\n\tGRADES IN DESCENDING NUMERIC ORDER:\n"; foreach $key (sort hashValueDescendingNum (keys(%grades))) { print "\t\t$grades{$key} \t\t $key\n"; } Although this demo program is fairly lengthy, you can see at the bottom of the code where the student grades are printed in ascending and descending numeric value. The output of the program looks like this: GRADES IN ASCENDING NUMERIC ORDER: 55 student4 75 student2 76 student5 90 student1 96 student3 GRADES IN DESCENDING NUMERIC ORDER: 96 student3 90 student1 76 student5 75 student2 55 student4 From mike at lamertz.net Sun Nov 6 15:00:03 2005 From: mike at lamertz.net (Michael Lamertz) Date: Sun, 6 Nov 2005 23:00:03 UT Subject: [Cologne-pm] Treffen am 09.11.2005... Message-ID: <20051106230004.088BD1CE661@tweety.intern.perl-ronin.de> Yo! Das n?chste Treffen findet wie gewohnt statt am 2. Mittwoch des Monats, also am 09.11.2005, in der Sansibar Trierer Str. 41 50674 K?ln ab ca. 18:30 Dies ist eine automatisch erzeugte Nachricht. Sollte mittlerweile auf der Liste ein anderer Termin verabredet worden sein, so ist diese Mail hinf?llig. From mike at lamertz.net Sun Nov 6 15:07:14 2005 From: mike at lamertz.net (Michael Lamertz) Date: Mon, 7 Nov 2005 00:07:14 +0100 Subject: [Cologne-pm] Sorting a hash by the hash value In-Reply-To: <1131313108.2512.29.camel@dervish> References: <1131313108.2512.29.camel@dervish> Message-ID: <20051106230714.GU4653@lamertz.net> *Hurm* Ok, ich gehe 'mal von besten Absichten aus, ein bischen Leben durch Inhalte auf die Liste zu bringen, aber ein paar Anmerkungen: > # Copyright 1998 DevDaily Interactive, Inc. All Rights Reserved. Der Code ist 7 Jahre alt, und eine more perlish Loesung hat es, obwohl die Frage noch immer wieder und wieder auf beginner's Listen auftaucht, in dieser Zeit sogar in die FAQ geschafft: ---------- perldoc -q 'sort.*hash|hash.*sort' ---------- Found in /usr/share/perl/5.8/pod/perlfaq4.pod How do I sort a hash (optionally by value instead of key)? Internally, hashes are stored in a way that prevents you from imposing an order on key-value pairs. Instead, you have to sort a list of the keys or values: @keys = sort keys %hash; # sorted by key @keys = sort { $hash{$a} cmp $hash{$b} } keys %hash; # and by value Here we'll do a reverse numeric sort by value, and if two keys are identical, sort by length of key, or if that fails, by straight ASCII comparison of the keys (well, possibly modified by your locale--see perllocale). @keys = sort { $hash{$b} <=> $hash{$a} || length($b) <=> length($a) || $a cmp $b } keys %hash; How can I always keep my hash sorted? You can look into using the DB_File module and tie() using the $DB_BTREE hash bindings as documented in "In Memory Databases" in DB_File. The Tie::IxHash module from CPAN might also be instructive. ---------- perldoc -q 'sort.*hash|hash.*sort' ---------- Meine Version des Programmes, dessen Urheber uebrigens das Konzept der anonymous sub-ref nicht kapiert hat, lautet ---------- snip ---------- my %grade = ( student1 => 90, student2 => 75, student3 => 96, student4 => 55, student5 => 76, ); print "Ascending:\n", map { "\t$_ => $grade{$_}\n" } sort { $grade{$a} <=> $grade{$b} } keys %grade; print "Descending:\n", map { "\t$_ => $grade{$_}\n" } sort { $grade{$b} <=> $grade{$a} } keys %grade; ---------- snip ---------- Ich empfehle hierzu den Talk von Uri Guttman, gehalten auf der YAPC::EU in Paris. Dort hat er sich ueber die Balance zwischen wart- und lesbarem Perl-Code auf der einen Seite, und "Baby-Code", der sich nicht traut, die spracheigenen Idiome zu benutzen auf der anderen Seite, hinreichend ausgelassen. Die Variablenbezeichnung wuerde ich uebrigens im Singular formulieren, da man i.d. Regel eher auf das einzelne Element zugreift, statt auf die Gesamtmenge aller 'grades'. Das liest sich dann leichter: $grade{Michael} vs. $grades{Michael}. Das ist aber wie gesagt persoenliche Praeferenz, und haengt natuerlich davon ab, welche "Sicht" auf die Daten ueberwiegt. Ein elender Ketzer koennte sich natuerlich jetzt 'nen Typeglob anlegen, und die Gesamtheit als %grades ansprechen, den einzelnen aber als %grade. ;-) Und nochwas: Wenn Ihr solche "Artikel" Quoted, dann bitte mit Quellennennung, sonst fuehlt sich evtl. 'mal jemand gedissed, der seinen eigenen Code in unserem Mail-Archiv ergoogelt. Mike -- Michael Lamertz | mlamertz at perl-ronin.de Sandstr. 122 | http://www.perl-ronin.de 50226 Frechen | +49 171 6900 310 (mobile) Germany | +49 2234 205947 (private) From pagaltzis at gmx.de Sun Nov 6 15:08:23 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Mon, 7 Nov 2005 00:08:23 +0100 Subject: [Cologne-pm] Treffen am 09.11.2005... In-Reply-To: <20051106230004.088BD1CE661@tweety.intern.perl-ronin.de> References: <20051106230004.088BD1CE661@tweety.intern.perl-ronin.de> Message-ID: <20051106230823.GQ4409@klangraum> * Michael Lamertz [2005-11-07 00:05]: > Das n?chste Treffen findet wie gewohnt statt am 2. Mittwoch des > Monats, also am 09.11.2005, Also denn. Wer ist dabei? Gruss, -- Aristoteles From pagaltzis at gmx.de Sun Nov 6 16:49:26 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Mon, 7 Nov 2005 01:49:26 +0100 Subject: [Cologne-pm] Sorting a hash by the hash value In-Reply-To: <20051106230714.GU4653@lamertz.net> References: <1131313108.2512.29.camel@dervish> <20051106230714.GU4653@lamertz.net> Message-ID: <20051107004926.GS4409@klangraum> * Michael Lamertz [2005-11-07 00:10]: > Ich empfehle hierzu den Talk von Uri Guttman, gehalten auf der > YAPC::EU in Paris. Dort hat er sich ueber die Balance zwischen > wart- und lesbarem Perl-Code auf der einen Seite, und > "Baby-Code", der sich nicht traut, die spracheigenen Idiome zu > benutzen auf der anderen Seite, hinreichend ausgelassen. Hast du irgendeinen Link oder sowas? W?rde mich interessieren, was andere Leute zu diesem Spannungsfeld denken. Gruss, -- #Aristoteles *AUTOLOAD=*_=sub{s/(.*)::(.*)/print$2,(",$\/"," ")[defined wantarray]/e;$1}; &Just->another->Perl->hacker; From cem.sakaryali at easi.de Sun Nov 6 23:47:17 2005 From: cem.sakaryali at easi.de (Cem Sakaryali) Date: Mon, 07 Nov 2005 08:47:17 +0100 Subject: [Cologne-pm] Sorting a hash by the hash value In-Reply-To: <1131313108.2512.29.camel@dervish> References: <1131313108.2512.29.camel@dervish> Message-ID: <1131349637.2591.0.camel@dervish> die Quelle ist: http://www.devdaily.com/perl/edu/qanda/plqa00016/ Gruss Cem n Sun, 2005-11-06 at 22:38 +0100, Cem Sakaryali wrote: > Habe ich im Netzt gefunden, m?glicherweise kann > es f?r einen von euch N?tzlich sein. > > Gruss > Cem > > ############################# > > Answer: > > First, sorting a hash by the hash key > > Sorting the output of a hash by the hash key is a pretty well-known > recipe. It's covered in another Q&A article titled "How to sort a hash > by the hash key". > > Sorting a hash by the hash value > > Sorting a hash by the hash value is a bit more difficult than sorting > the hash by the key, but it's not too bad. It just requires a small > "helper" function. > > This is easiest to demonstrate by example. Suppose we have a class of > five students. Rather than give them names, we'll call them student1, > student2, etc. Suppose these students just took a test, and we stored > their grades in a hash (called associative arrays prior to the release > of Perl 5) named grades. > > The hash definition might look like this: > > %grades = ( > student1 => 90, > student2 => 75, > student3 => 96, > student4 => 55, > student5 => 76, > ); > > If you're familiar with hashes, you know that the student names are the > keys, and the test scores are the hash values. > > The key to sorting a hash by value is the function you create to help > the sort command perform it's function. Following the format defined by > the creators of Perl, you create a function I call a helper function > that tells Perl how to sort the list it's about to receive. In the case > of the program you're about to see, I've created two helper functions > named hashValueDescendingNum (sort by hash value in descending numeric > order) and hashValueAscendingNum (sort by hash value in ascending > numeric order). > > Here's a program that prints the contents of the grades hash, sorted > numerically by the hash value: > > #!/usr/bin/perl -w > > #----------------------------------------------------------------------# > # printHashByValue.pl > # > # > # > # Copyright 1998 DevDaily Interactive, Inc. All Rights Reserved. > # > #----------------------------------------------------------------------# > > #----------------------------------------------------------------------# > # FUNCTION: hashValueAscendingNum > # > # > # > # PURPOSE: Help sort a hash by the hash 'value', not the 'key'. > # > # Values are returned in ascending numeric order (lowest > # > # to highest). > # > #----------------------------------------------------------------------# > > sub hashValueAscendingNum { > $grades{$a} <=> $grades{$b}; > } > > > #----------------------------------------------------------------------# > # FUNCTION: hashValueDescendingNum > # > # > # > # PURPOSE: Help sort a hash by the hash 'value', not the 'key'. > # > # Values are returned in descending numeric order > # > # (highest to lowest). > # > #----------------------------------------------------------------------# > > sub hashValueDescendingNum { > $grades{$b} <=> $grades{$a}; > } > > > %grades = ( > student1 => 90, > student2 => 75, > student3 => 96, > student4 => 55, > student5 => 76, > ); > > print "\n\tGRADES IN ASCENDING NUMERIC ORDER:\n"; > foreach $key (sort hashValueAscendingNum (keys(%grades))) { > print "\t\t$grades{$key} \t\t $key\n"; > } > > print "\n\tGRADES IN DESCENDING NUMERIC ORDER:\n"; > foreach $key (sort hashValueDescendingNum (keys(%grades))) { > print "\t\t$grades{$key} \t\t $key\n"; > } > > > > Although this demo program is fairly lengthy, you can see at the bottom > of the code where the student grades are printed in ascending and > descending numeric value. > > The output of the program looks like this: > > GRADES IN ASCENDING NUMERIC ORDER: > 55 student4 > 75 student2 > 76 student5 > 90 student1 > 96 student3 > > GRADES IN DESCENDING NUMERIC ORDER: > 96 student3 > 90 student1 > 76 student5 > 75 student2 > 55 student4 > > > _______________________________________________ > Cologne-pm mailing list > Cologne-pm at pm.org > http://mail.pm.org/mailman/listinfo/cologne-pm From mike at lamertz.net Mon Nov 7 00:28:01 2005 From: mike at lamertz.net (Michael Lamertz) Date: Mon, 7 Nov 2005 09:28:01 +0100 Subject: [Cologne-pm] Treffen am 09.11.2005... In-Reply-To: <20051106230823.GQ4409@klangraum> References: <20051106230004.088BD1CE661@tweety.intern.perl-ronin.de> <20051106230823.GQ4409@klangraum> Message-ID: <20051107082801.GV4653@lamertz.net> Ho, On Mon, Nov 07, 2005 at 12:08:23AM +0100, A. Pagaltzis wrote: > * Michael Lamertz [2005-11-07 00:05]: > > Das n?chste Treffen findet wie gewohnt statt am 2. Mittwoch des > > Monats, also am 09.11.2005, > > Also denn. Wer ist dabei? ok, also in Anbetracht Deiner letzten Mail und meines schlechten Gewissens: Moi, most definitely. Hab' keinen geplanten Change, hab' keine Bereitschaft, hab' keine Hundeschule die ich vertreten muss. Ja. -- Well, then let's give that Java-Wussie a beating... (me) Michael Lamertz | +49 2234 204947 / +49 171 6900 310 Sandstr. 122 | mike at lamertz.net 50226 Frechen | http://www.lamertz.net Germany | http://www.perl-ronin.de From mike at lamertz.net Mon Nov 7 00:41:39 2005 From: mike at lamertz.net (Michael Lamertz) Date: Mon, 7 Nov 2005 09:41:39 +0100 Subject: [Cologne-pm] Sorting a hash by the hash value In-Reply-To: <20051107004926.GS4409@klangraum> References: <1131313108.2512.29.camel@dervish> <20051106230714.GU4653@lamertz.net> <20051107004926.GS4409@klangraum> Message-ID: <20051107084138.GW4653@lamertz.net> On Mon, Nov 07, 2005 at 01:49:26AM +0100, A. Pagaltzis wrote: > * Michael Lamertz [2005-11-07 00:10]: > > Ich empfehle hierzu den Talk von Uri Guttman, gehalten auf der > > YAPC::EU in Paris. Dort hat er sich ueber die Balance zwischen > > wart- und lesbarem Perl-Code auf der einen Seite, und > > "Baby-Code", der sich nicht traut, die spracheigenen Idiome zu > > benutzen auf der anderen Seite, hinreichend ausgelassen. > > Hast du irgendeinen Link oder sowas? W?rde mich interessieren, > was andere Leute zu diesem Spannungsfeld denken. *raeusper* *blush* hatte irgendwie angenommen, dass sich dazu etwas im Netz finden laesst. Fehlanzeige. Konnte leider kein Transcript, und nur einen kurzen Kommentar auf use.perl.org finden, der aber auf den Teil des Talks nicht eingeht. Dumm gelaufen @-) -- Well, then let's give that Java-Wussie a beating... (me) Michael Lamertz | +49 2234 204947 / +49 171 6900 310 Sandstr. 122 | mike at lamertz.net 50226 Frechen | http://www.lamertz.net Germany | http://www.perl-ronin.de From mike at lamertz.net Mon Nov 7 00:56:12 2005 From: mike at lamertz.net (Michael Lamertz) Date: Mon, 7 Nov 2005 09:56:12 +0100 Subject: [Cologne-pm] Sorting a hash by the hash value In-Reply-To: <1131349637.2591.0.camel@dervish> References: <1131313108.2512.29.camel@dervish> <1131349637.2591.0.camel@dervish> Message-ID: <20051107085611.GX4653@lamertz.net> Hey, On Mon, Nov 07, 2005 at 08:47:17AM +0100, Cem Sakaryali wrote: > die Quelle ist: > > http://www.devdaily.com/perl/edu/qanda/plqa00016/ Danke. Gerade, wenn sowas nicht von Mailinglisten- oder News-Archiven stammt, ist die Quellen-Nennung in meinen Augen ungemein wichtig. -- Michael Lamertz | mlamertz at perl-ronin.de Sandstr. 122 | http://www.perl-ronin.de 50226 Frechen | +49 171 6900 310 (mobile) Germany | +49 2234 205947 (private) From sigel at netcologne.de Mon Nov 7 08:58:43 2005 From: sigel at netcologne.de (Alexander Sigel) Date: Mon, 07 Nov 2005 17:58:43 +0100 Subject: [Cologne-pm] [Fwd: [WsOrga] 2. CfP: German Perl Workshop 2006] Message-ID: <436F87C3.9000703@netcologne.de> zur kenntnis mit bitte um weitergabe an interessierte perlisten ... ihr seid herzlich eingeladen, vortr?ge einzureichen. insbesondere auch berichte ?ber laufende arbeiten sind willkommen. herzliche gr??e alexander sigel -------- Original-Nachricht -------- Betreff: [WsOrga] 2. CfP: German Perl Workshop 2006 Datum: Mon, 7 Nov 2005 11:12:31 +0100 Von: Steffen Schwigon An: wsorga at perl-workshop.de 2. Call for Papers / 8. Deutscher Perl-Workshop / 01.03.- 03.03.2006 Ort: Ruhr-Universit?t in Bochum Location: Ruhr-University in Bochum _English Abstract_ : The 8th German Perl-Workshop will take place from Wednesday, 01.03.2006 to Friday, 03.03.2006 and you are invited to submit proposals for talks or tutorials. We will happily accept proposals for interesting talks related to Perl. Please use http://www.perl-workshop.de/db/addtalk.epl to enter your proposal. *** Von Aschermittwoch, dem 01. M?rz 2006 bis Freitag, den 03. M?rz 2006 findet der 8. Deutsche Perl-Workshop statt. Das Organisationskomitee l?dt dich ein, Vorschl?ge f?r einen oder mehrere Beitr?ge zum n?chsten Perl-Workshop einzureichen. Unser Workshop steht und f?llt mit den Vortr?gen. ?blicherweise sind Vortr?ge 5, 20 oder 40 Minuten lang. Alle Themen, die in irgendeiner Weise mit Perl oder dem Perl-Umfeld zu tun haben, k?nnen als Vortr?ge f?r den Workshop interessant sein. Weiterhin diskutieren wir gerade die M?glichkeit, vor Ort Hackathons zu veranstalten, wobei z.B. Autoren von CPAN-Modulen nach einem Intro-Vortrag ihr Modul gemeinsam mit anderen nach Perl6/Pugs portieren k?nnten. Bitte meldet Interesse oder weitere Ideen an uns. Unter http://www.perl-workshop.de/de/2006/docs/cfp.htm steht der ausf?hrliche "Call for Papers". Verl?ngert Abgabefrist f?r die Einreichung von Vorschl?gen ist Sonntag, der 20.11.2005. Benutze bitte http://www.perl-workshop.de/db/addtalk.epl, um Deinen Vorschlag einzureichen. Wir freuen uns auf deinen Beitrag! wsorga at perl-workshop.de _______________________________________________ WsOrga mailing list WsOrga at srvh1.ecos.de http://www.ecos.de/mailman/listinfo/wsorga From pagaltzis at gmx.de Mon Nov 7 15:53:03 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Tue, 8 Nov 2005 00:53:03 +0100 Subject: [Cologne-pm] Die Homepage =?utf-8?Q?ze?= =?utf-8?Q?igt_=22News=22_von_vor_zwei_Jahren=2C_oder=2C_Ein_R=C3=BCckblic?= =?utf-8?Q?k?= In-Reply-To: <20051106153013.GS4653@lamertz.net> References: <20051106035332.GH4409@klangraum> <20051106153013.GS4653@lamertz.net> Message-ID: <20051107235303.GF29499@klangraum> * Michael Lamertz [2005-11-06 16:35]: > Leider weiss ich auch nicht, wie man da 'raus kommen kann. Da habe ich auch keine brillante Idee. Ein bisschen Promotion ?ber den Linuxworkshop et al k?nnte ebensoviel bewirken wie vor drei Jahren ? da m?sste ich mich aber erst wieder ein bisschen reinleben, ich bin schon ewig nicht mehr dagewesen und auch lange nicht mehr abonniert. > Ich bin gerne bereit, bei Dave Cross die Uebertragung der > Group-Leadership zu beantragen. Alternativ koennte ich die > Administrativa neben dem Forward des O'Reilly auch wieder > aufnehmen, falls mir zumindest die Dinge die bei den > stattfindenden Treffen passieren zugesandt werden. > > Wie's Euch lieber ist. Zuzuschicken gibt?s nicht viel ? es wird zwanglos geplaudert, aber site-relevantes kommt momentan nicht dabei herum. Vielleicht k?nnten wir diesmal vor die Plauderei eine Diskussion zu dem Thema ?Wie beleben wir die Kiste? schieben? Auf einen F?hrungswechsel poche ich nicht gerade ? ich werde auch nicht behaupten, dass ich das 1A machen werde. Ich w?rde dem Laden bloss zumindest eine gewisse Priorit?t einr?umen. Wenn du meinst, dass du das auf Dauer auch kannst, soll es mir recht sein, wenn alles bleibt wie es ist. Alles, was ich will, ist nicht tatenlos zusehen zu m?ssen. > Es gibt 'ne Menge Subscribers auf der Liste, von denen noch nie > jemand 'was gesagt hat. Irgendeine Motivation, sich zu > subscriben, musste doch vorhanden sein... Das w?sste ich auch nur zu gern? Gruss, -- Aristoteles ?Wer nicht ?ber sich selbst lachen kann, nimmt das Leben nicht ernst genug.? From Susan.Dittmar at gmx.de Tue Nov 8 05:08:07 2005 From: Susan.Dittmar at gmx.de (Susan Dittmar) Date: Tue, 8 Nov 2005 14:08:07 +0100 Subject: [Cologne-pm] Die =?iso-8859-1?Q?Homepa?= =?iso-8859-1?Q?ge_zeigt_=22News=22_von_vor_zwei_Jahren=2C_oder=2C_Ein_R?= =?iso-8859-1?Q?=FCckblick?= In-Reply-To: <20051107235303.GF29499@klangraum> References: <20051106035332.GH4409@klangraum> <20051106153013.GS4653@lamertz.net> <20051107235303.GF29499@klangraum> Message-ID: <20051108130807.GD5243@eureca.de> > > Irgendeine Motivation, sich zu subscriben, musste doch > > vorhanden sein... > > Das w?sste ich auch nur zu gern... Nun, bei mir war es die Hoffnung, hin und wieder Neues zum Thema Perl zu lesen. Ich nutze die Sprache fast t?glich, aber da ich mir alles selbst beigebracht habe, sind meine Programme sicher oft alles andere als elegant. Ich habe aus Euren Fragen und den Antworten schon so manches gelernt, und meist Dinge, die nur am Rande erw?hnt bzw. benutzt wurden. Etwas, wof?r ich Euch allen ziemlich dankbar bin. Gru?, Susan From pagaltzis at gmx.de Tue Nov 8 07:29:15 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Tue, 8 Nov 2005 16:29:15 +0100 Subject: [Cologne-pm] Die Homepage =?utf-8?Q?ze?= =?utf-8?Q?igt_=22News=22_von_vor_zwei_Jahren=2C_oder=2C_Ein_R=C3=BCckblic?= =?utf-8?Q?k?= In-Reply-To: <20051108130807.GD5243@eureca.de> References: <20051106035332.GH4409@klangraum> <20051106153013.GS4653@lamertz.net> <20051107235303.GF29499@klangraum> <20051108130807.GD5243@eureca.de> Message-ID: <20051108152915.GJ29499@klangraum> * Susan Dittmar [2005-11-08 14:10]: > Ich habe aus Euren Fragen und den Antworten schon so manches > gelernt, und meist Dinge, die nur am Rande erw?hnt bzw. benutzt > wurden. Etwas, wof?r ich Euch allen ziemlich dankbar bin. Das freut zu h?ren. :-) Gruss, -- Aristoteles ?Wer nicht ?ber sich selbst lachen kann, nimmt das Leben nicht ernst genug.? From mike at lamertz.net Tue Nov 8 06:59:07 2005 From: mike at lamertz.net (Michael Lamertz) Date: Tue, 8 Nov 2005 15:59:07 +0100 Subject: [Cologne-pm] Die =?iso-8859-1?Q?Homepa?= =?iso-8859-1?Q?ge_zeigt_=22News=22_von_vor_zwei_Jahren=2C_oder=2C_Ein_R?= =?iso-8859-1?Q?=FCckblick?= In-Reply-To: <20051108130807.GD5243@eureca.de> References: <20051106035332.GH4409@klangraum> <20051106153013.GS4653@lamertz.net> <20051107235303.GF29499@klangraum> <20051108130807.GD5243@eureca.de> Message-ID: <20051108145907.GZ4653@lamertz.net> Yo! On Tue, Nov 08, 2005 at 02:08:07PM +0100, Susan Dittmar wrote: > > Nun, bei mir war es die Hoffnung, hin und wieder Neues zum Thema > Perl zu lesen. Ich nutze die Sprache fast t?glich, aber da ich > mir alles selbst beigebracht habe, sind meine Programme sicher > oft alles andere als elegant. Dann bring' doch einfach 'mal ein Stueck "verdaechtigen" Code mit, bei dem Du denkst, "das ist nicht optimal". Da kann man doch dann 'mal verschiedene Alternativen oder Auffaelligkeiten diskutieren. -- Well, then let's give that Java-Wussie a beating... (me) Michael Lamertz | +49 2234 204947 / +49 171 6900 310 Sandstr. 122 | mike at lamertz.net 50226 Frechen | http://www.lamertz.net Germany | http://www.perl-ronin.de From Susan.Dittmar at gmx.de Wed Nov 9 05:38:53 2005 From: Susan.Dittmar at gmx.de (Susan Dittmar) Date: Wed, 9 Nov 2005 14:38:53 +0100 Subject: [Cologne-pm] Die =?iso-8859-1?Q?Homepa?= =?iso-8859-1?Q?ge_zeigt_=22News=22_von_vor_zwei_Jahren=2C_oder=2C_Ein_R?= =?iso-8859-1?Q?=FCckblick?= In-Reply-To: <20051108145907.GZ4653@lamertz.net> References: <20051106035332.GH4409@klangraum> <20051106153013.GS4653@lamertz.net> <20051107235303.GF29499@klangraum> <20051108130807.GD5243@eureca.de> <20051108145907.GZ4653@lamertz.net> Message-ID: <20051109133853.GC25347@eureca.de> Quoting Michael Lamertz (mike at lamertz.net): > Dann bring' doch einfach 'mal ein Stueck "verdaechtigen" Code mit, bei > dem Du denkst, "das ist nicht optimal". Da kann man doch dann 'mal > verschiedene Alternativen oder Auffaelligkeiten diskutieren. Ich werd mal schauen, was mir in den n?chsten Wochen da so in die H?nde f?llt. Kann heute aus famili?ren Gr?nden leider nicht zum Stammtisch kommen :-( Gru?, Susan From jens.gassmann at atomix.de Wed Nov 9 05:46:35 2005 From: jens.gassmann at atomix.de (Jens Gassmann) Date: Wed, 09 Nov 2005 14:46:35 +0100 Subject: =?ISO-8859-1?Q?Re=3A_=5BCologne-pm=5D_Die_Homepage_zeigt?= =?ISO-8859-1?Q?_=22News=22_von_vor_zwei_Jahren=2C_oder=2C_?= =?ISO-8859-1?Q?Ein_R=FCckblick?= In-Reply-To: <20051109133853.GC25347@eureca.de> References: <20051106035332.GH4409@klangraum> <20051106153013.GS4653@lamertz.net> <20051107235303.GF29499@klangraum> <20051108130807.GD5243@eureca.de> <20051108145907.GZ4653@lamertz.net> <20051109133853.GC25347@eureca.de> Message-ID: <4371FDBB.3070108@atomix.de> > Ich werd mal schauen, was mir in den n?chsten Wochen da so in die > H?nde f?llt. Kann heute aus famili?ren Gr?nden leider nicht zum > Stammtisch kommen :-( vielleicht k?nnen wir das ja schon hier auf der Liste diskutieren. Ich freue mich immer etwas dazu zu lernen, kann aber zeitlich nicht an den Treffen teilnehmen. Gerade heute habe ich mir zwei B?cher zum Thema guter und sauberer Perl-Code bestellt. Perl Medic und Perl Debugged - beide english aber sicher sehr spannend wenn es um sauberen Perl-Code geht. Werde euch mehr dazu berichten wenn ich sie durch habe. Viele Gr?sse Jens -- Online Software Designer Homepage [ http://www.atomix.de/ ] AISware CMS 3.0 [ http://www.aisware.de/ ] EMail: jens.gassmann at atomix.de Telefon: 0221/975 08 20 From tmildenberger at netcologne.de Wed Nov 9 11:44:57 2005 From: tmildenberger at netcologne.de (Thomas Mildenberger) Date: Wed, 9 Nov 2005 20:44:57 +0100 Subject: =?ISO-8859-1?Q?Re:_[Cologne-pm]_Die_Homepage_zeigt_=22News=22_von_vor_zwei_Jahren, _?= =?ISO-8859-1?Q?oder,_Ein_R=FCckblick?= References: <20051108130807.GD5243@eureca.de> <20051108145907.GZ4653@lamertz.net> <20051109133853.GC25347@eureca.de> Message-ID: > Ich werd mal schauen, was mir in den n?chsten Wochen da so in die > H?nde f?llt. Kann heute aus famili?ren Gr?nden leider nicht zum > Stammtisch kommen :-( ;) Immer noch Stress? ;) Gruss, Thomas P.S.: Ich bin eine Eurer Karteileichen. Ich programmiere kein perl (bis jetzt), ich bin interessierter Debian-user mit Verst?ndnisproblemen, und aufgrund meiner nervigen Nachfragen in #debian.de eingeladen worden, mal am Stammtisch teilzunehmen. Dies habe ich vor. Wahrscheinlich aber erst n?chstes Jahr, da ich dann guter Hoffnung bin, wieder etwas mehr Zeit zu haben. Also, lasst zumindest die Institution nicht sterben. Wenn ich dann komme, gebe ich auch einen aus! > Gru?, > Susan > _______________________________________________ > Cologne-pm mailing list > Cologne-pm at pm.org > http://mail.pm.org/mailman/listinfo/cologne-pm From pagaltzis at gmx.de Wed Nov 9 15:58:57 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Thu, 10 Nov 2005 00:58:57 +0100 Subject: [Cologne-pm] =?utf-8?q?F=C3=BCr_die_heute_abend_Anwesenden?= Message-ID: <20051109235857.GL29499@klangraum> Hallo Mike, Phillip und Detlef, hier ist der erw?hnte Link zur Ingenieursleistungsgeschichte: Gruss, -- Aristoteles Pagaltzis // From cem.sakaryali at easi.de Thu Nov 10 02:52:11 2005 From: cem.sakaryali at easi.de (Cem Sakaryali) Date: Thu, 10 Nov 2005 11:52:11 +0100 (Westeuropäische Normalzeit) Subject: [Cologne-pm] script auf mehreren CPU's starten Message-ID: <29583.136.8.152.14.1131619931.squirrel@dergah> Hallo, ich habe ein perl script, geschrieben um directorys zu gzippen und taren. Anschliessend werden die tar files auf eine andere Platte geschoben. ablauf: gzip dir1/* tar dir1.tar dir1/ mv dir1.tar blabla/backup gzip dir2/* tar dir2.tar dir2/ mv dir2.tar blabla/backup gzip dir3/* tar dir3.tar dir3/ mv dir3.tar blabla/backup gzip dir4/* tar dir4.tar dir4/ mv dir4.tar blabla/backup gzip, tar und mv mache ich mit system () Meine Frage ist, da die einzelne Dir's mitteinander nichts zutun haben wuerde ich sie parallel auf mehreren maschienen starten. Wie kann ich dies machen? Danke und Gruss Cem Hier mein script. ################### use strict; my $DirectoryWhereToPut = '/backup'; # dieser Hash ist fuer zukuenftige sachen gedacht. # Ist hier eigentlich nicht notwendig my %hash = ( # directory name directory where to put a => 'cem/a' , b => 'cem/b' , c => 'cem/c' , d => 'cem/d' , ); my ($stund,$min,$sec,$tag,$monat,$jahr)=get_time (); foreach my $Dir (keys %hash) { my $TarFileName = "$Dir"."BACKUP"."_"."$jahr"."_"."$monat"."_"."$tag\.tar"; CompressFile ($Dir,$TarFileName); MoveFile ($TarFileName,$DirectoryWhereToPut); } sub CompressFile { my ($Dir,$TarFileName) =@_; # gzip it system ("gzip -rf $Dir/\*"); print "gzip $Dir done\n"; # tar it system ("tar cvf $TarFileName $Dir/\*"); print "tar $TarFileName done\n"; return; } sub MoveFile { my ($TarFileName,$DirectoryWhereToPut) =@_; # move it to DirectoryWhereToPut system ("mv $TarFileName $DirectoryWhereToPut"); print "move $TarFileName to $DirectoryWhereToPut done\n"; return; } sub get_time { my ($sec,$min,$stund,$tag,$monat,$jahr,$junk,$day_of_year)=localtime(); $tag= sprintf "%2.2d",$tag; $monat=sprintf "%2.2d",$monat+1; return ($stund,$min,$sec,$tag,$monat,($jahr+1900)); } From Susan.Dittmar at gmx.de Thu Nov 10 03:11:00 2005 From: Susan.Dittmar at gmx.de (Susan Dittmar) Date: Thu, 10 Nov 2005 12:11:00 +0100 Subject: =?iso-8859-1?B?PT9JU08tODg1OS0xP1E/?= =?iso-8859-1?B?UmU6X1tDb2xvZ25lLXBtXV9EaWVfSG9tZXBhZ2VfemVpZ3RfPTIyTmV3?= =?iso-8859-1?B?cz0yMl92b25fdm9yX3p3ZWlfSmFocmVuLCBfPz0gb2RlciwgRWluIFL8?= =?iso-8859-1?Q?ckblick?= In-Reply-To: References: <20051108130807.GD5243@eureca.de> <20051108145907.GZ4653@lamertz.net> <20051109133853.GC25347@eureca.de> Message-ID: <20051110111100.GD11645@eureca.de> Quoting Thomas Mildenberger (tmildenberger at netcologne.de): > > Kann heute aus famili?ren Gr?nden leider nicht zum > > Stammtisch kommen :-( > > ;) Immer noch Stress? ;) Ja. Wird auch so schnell nicht aufh?ren, es sei denn, ich schmei? ihn raus. Manche Probleme lassen sich halt nicht so mal eben schnell l?sen... Ich hoffe, das n?chste Mal blockiert es mir nicht wieder den Stammtisch! Gru?, Susan From pagaltzis at gmx.de Thu Nov 10 10:30:14 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Thu, 10 Nov 2005 19:30:14 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <29583.136.8.152.14.1131619931.squirrel@dergah> References: <29583.136.8.152.14.1131619931.squirrel@dergah> Message-ID: <20051110183014.GN29499@klangraum> Hi Cem, * Cem Sakaryali [2005-11-10 11:55]: > Meine Frage ist, da die einzelne Dir's mitteinander nichts > zutun haben wuerde ich sie parallel auf mehreren maschienen > starten. Wie kann ich dies machen? Auf mehreren Maschinen, oder auf mehreren CPUs? Oder? was? :-) Ehrlich gesagt w?rde ich f?r diese Aufgabe garkein Perl schreiben, sondern einfach Shell verwenden und die Parallelausf?hrung per ?blicher Jobkontrolle erledigen. Diese Aufgaben sind schliesslich der ganze Lebenssinn der Shell. Zum Skript ein Haufen Kommentare: > my $DirectoryWhereToPut = '/backup'; Der englische Begriff daf?r ist ?brigens ?destination?. > my ($stund,$min,$sec,$tag,$monat,$jahr)=get_time (); > > foreach my $Dir (keys %hash) { > my $TarFileName = > "$Dir"."BACKUP"."_"."$jahr"."_"."$monat"."_"."$tag\.tar"; > CompressFile ($Dir,$TarFileName); > MoveFile ($TarFileName,$DirectoryWhereToPut); > } Das ist in vielerlei Hinsicht unsch?n. Als allerallererstes: bitte Variablen nicht allein in Anf?hrungszeicehn setzen. Perl ist keine Shell. (Ja, es gibt einen subtilen Unterschied ? der zeigt sich zB. bei Referenzen, die mit Anf?hrungszeichen nicht funktionieren.) Der Backslash ist ?brigens ?berfl?ssig. Ausserdem baust du den immer gleichen String aus denselben drei von sechs Variablen zusammen ? die anderen drei werden garnicht verwendet. Sch?ner ist es, weniger Code zu schreiben, indem du einfach die POSIX-Funktion `strftime` verwendest ? sowas wie ein `printf` f?r Datums- und Zeitangaben. Und ausserdem: ist es deine Absicht, dass zwischen $Dir und dem String ?BACKUP? kein Verzeichnistrenner steht? Im Grossen und Ganzen ist es anzuraten, Pfade mit den Funktionen aus File::Spec zusammenzubauen, statt sie mit blossen String-Operationen zusammenzukleben. > sub CompressFile { > my ($Dir,$TarFileName) =@_; > # gzip it > system ("gzip -rf $Dir/\*"); > print "gzip $Dir done\n"; > # tar it > system ("tar cvf $TarFileName $Dir/\*"); > print "tar $TarFileName done\n"; > return; > } Warum gzippst du die Dateien alle einzeln und packst sie dann in einen unkomprimierten Tarball? W?re es andersrum nicht viel sinnvoller? > sub MoveFile { > my ($TarFileName,$DirectoryWhereToPut) =@_; > # move it to DirectoryWhereToPut > system ("mv $TarFileName $DirectoryWhereToPut"); > print "move $TarFileName to $DirectoryWhereToPut done\n"; > return; > } `system( $langer_string )` ist unsch?n. Enthalten deine Dateinamen zuf?llig mal Leerzeichen oder andere Metazeichen, hast du ein Problem. Eindeutig und sicher ist `system( $programm, @parameter )`. > sub get_time { > my ($sec,$min,$stund,$tag,$monat,$jahr,$junk,$day_of_year)=localtime(); > $tag= sprintf "%2.2d",$tag; > $monat=sprintf "%2.2d",$monat+1; > return ($stund,$min,$sec,$tag,$monat,($jahr+1900)); > } Anmerkung am Rande: du kannst auch einfach `%2d` schreiben ? ich glaube nicht, dass du tats?chlich an Nachkommastellen interessiert bist? Summa summarum w?rde ich dieses Skript so oder ?hnlich schreiben: #!/usr/bin/perl use strict; use warnings; use Getopt::Long; use POSIX qw( strftime ); GetOptions( 'destdir|d=s' => \( my $opt_destination = '/backup' ), 'srcdir|s=s' => \( my %opt_srcdir ), ); if( not %opt_srcdir ) { %opt_srcdir = ( # directory name directory where to put a => 'cem/a' , b => 'cem/b' , c => 'cem/c' , d => 'cem/d' , ); } my $ymd = strftime '%Y_%m_%d', localtime; foreach my $dir ( keys %opt_srcdir ) { my $tarball = "${dir}BACKUP_${ymd}.tar.gz"; run_cmd( tar => 'cvzf', $tarball, $dir ); run_cmd( mv => $tarball, $opt_destination ); } sub run_cmd { system { $_[ 0 ] } @_; print "Done: @_\n"; } (Code ohne Gew?hr.) Das ist etwas hakelig, weil dein Mapping-Hash noch nicht richtig verwendet wird? aber naja, es ist halt zu erkennen, wie es aussehen sollte. Um es richtig rund zu machen fehlen da jetzt noch etwas POD und ein paar Aufrufe von Pod::Usage. Gruss, -- #Aristoteles *AUTOLOAD=*_=sub{s/(.*)::(.*)/print$2,(",$\/"," ")[defined wantarray]/e;$1}; &Just->another->Perl->hacker; From cem.sakaryali at easi.de Thu Nov 10 12:11:56 2005 From: cem.sakaryali at easi.de (Cem Sakaryali) Date: Thu, 10 Nov 2005 21:11:56 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <20051110183014.GN29499@klangraum> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> Message-ID: <1131653516.2581.61.camel@dervish> Hi Aristoteles, Eine Anmerkung am Rande, kann man bei unserer Mailingliste Reply To: cologne-pm at pm.org einstellen? Wenn ich einfach reply mache geht es nur an den sender. Wenn man reply to all macht bekommt der sender die Mail 2 mal. Z.B wenn Mike mir antwortet bekomme ich die Mail 2 mal. On Thu, 2005-11-10 at 19:30 +0100, A. Pagaltzis wrote: > Hi Cem, > > * Cem Sakaryali [2005-11-10 11:55]: > > Meine Frage ist, da die einzelne Dir's mitteinander nichts > > zutun haben wuerde ich sie parallel auf mehreren maschienen > > starten. Wie kann ich dies machen? > > Auf mehreren Maschinen, oder auf mehreren CPUs? Oder? was? :-) Eigentlich auf mehreren Maschinenen wobei jeder von denen 2 CPUs hat. Also beides :) Also 2 Maschinen fuer 4 directorys. Ich habe das Modul fork gefunden, ich denke dieses Modul kann auf eine Maschiene 2 prozesse erzeugen. Leider geh?rt fork nich zu standart perl und ich habe keine Ahnung ob es sich auf meiner Maschiene installieren l?sst. > > Ehrlich gesagt w?rde ich f?r diese Aufgabe garkein Perl > schreiben, sondern einfach Shell verwenden und die > Parallelausf?hrung per ?blicher Jobkontrolle erledigen. Diese > Aufgaben sind schliesslich der ganze Lebenssinn der Shell. > > Zum Skript ein Haufen Kommentare: > > > my $DirectoryWhereToPut = '/backup'; > > Der englische Begriff daf?r ist ?brigens ?destination?. > > > my ($stund,$min,$sec,$tag,$monat,$jahr)=get_time (); > > > > foreach my $Dir (keys %hash) { > > my $TarFileName = > > "$Dir"."BACKUP"."_"."$jahr"."_"."$monat"."_"."$tag\.tar"; > > CompressFile ($Dir,$TarFileName); > > MoveFile ($TarFileName,$DirectoryWhereToPut); > > } > > Das ist in vielerlei Hinsicht unsch?n. > > Als allerallererstes: bitte Variablen nicht allein in > Anf?hrungszeicehn setzen. Perl ist keine Shell. (Ja, es gibt > einen subtilen Unterschied ? der zeigt sich zB. bei Referenzen, > die mit Anf?hrungszeichen nicht funktionieren.) > > Der Backslash ist ?brigens ?berfl?ssig. > > Ausserdem baust du den immer gleichen String aus denselben > drei von sechs Variablen zusammen ? die anderen drei werden > garnicht verwendet. Sch?ner ist es, weniger Code zu schreiben, > indem du einfach die POSIX-Funktion `strftime` verwendest ? sowas > wie ein `printf` f?r Datums- und Zeitangaben. > > Und ausserdem: ist es deine Absicht, dass zwischen $Dir und dem > String ?BACKUP? kein Verzeichnistrenner steht? Im Grossen und > Ganzen ist es anzuraten, Pfade mit den Funktionen aus File::Spec > zusammenzubauen, statt sie mit blossen String-Operationen > zusammenzukleben. > > > sub CompressFile { > > my ($Dir,$TarFileName) =@_; > > # gzip it > > system ("gzip -rf $Dir/\*"); > > print "gzip $Dir done\n"; > > # tar it > > system ("tar cvf $TarFileName $Dir/\*"); > > print "tar $TarFileName done\n"; > > return; > > } > > Warum gzippst du die Dateien alle einzeln und packst sie dann in > einen unkomprimierten Tarball? W?re es andersrum nicht viel > sinnvoller? > Dies ist historisch entstanden, ich hatte wenig Platz auf der Platte und tar danach gz hat die Platte voll gemacht. Deine Vorschl?ge werde ich mir morgen bei der Arbeit anschauen. Vielen Dank Cem > > sub MoveFile { > > my ($TarFileName,$DirectoryWhereToPut) =@_; > > # move it to DirectoryWhereToPut > > system ("mv $TarFileName $DirectoryWhereToPut"); > > print "move $TarFileName to $DirectoryWhereToPut done\n"; > > return; > > } > > `system( $langer_string )` ist unsch?n. Enthalten deine > Dateinamen zuf?llig mal Leerzeichen oder andere Metazeichen, hast > du ein Problem. Eindeutig und sicher ist > `system( $programm, @parameter )`. > > > sub get_time { > > my ($sec,$min,$stund,$tag,$monat,$jahr,$junk,$day_of_year)=localtime(); > > $tag= sprintf "%2.2d",$tag; > > $monat=sprintf "%2.2d",$monat+1; > > return ($stund,$min,$sec,$tag,$monat,($jahr+1900)); > > } > > Anmerkung am Rande: du kannst auch einfach `%2d` schreiben ? ich > glaube nicht, dass du tats?chlich an Nachkommastellen > interessiert bist? > > Summa summarum w?rde ich dieses Skript so oder ?hnlich schreiben: > > #!/usr/bin/perl > use strict; > use warnings; > > use Getopt::Long; > use POSIX qw( strftime ); > > GetOptions( > 'destdir|d=s' => \( my $opt_destination = '/backup' ), > 'srcdir|s=s' => \( my %opt_srcdir ), > ); > > if( not %opt_srcdir ) { > %opt_srcdir = ( > # directory name directory where to put > a => 'cem/a' , > b => 'cem/b' , > c => 'cem/c' , > d => 'cem/d' , > ); > } > > my $ymd = strftime '%Y_%m_%d', localtime; > > foreach my $dir ( keys %opt_srcdir ) { > my $tarball = "${dir}BACKUP_${ymd}.tar.gz"; > run_cmd( tar => 'cvzf', $tarball, $dir ); > run_cmd( mv => $tarball, $opt_destination ); > } > > sub run_cmd { > system { $_[ 0 ] } @_; > print "Done: @_\n"; > } > > (Code ohne Gew?hr.) > > Das ist etwas hakelig, weil dein Mapping-Hash noch nicht richtig > verwendet wird? aber naja, es ist halt zu erkennen, wie es > aussehen sollte. > > Um es richtig rund zu machen fehlen da jetzt noch etwas POD und > ein paar Aufrufe von Pod::Usage. > > Gruss, > -- > #Aristoteles > *AUTOLOAD=*_=sub{s/(.*)::(.*)/print$2,(",$\/"," ")[defined wantarray]/e;$1}; > &Just->another->Perl->hacker; > _______________________________________________ > Cologne-pm mailing list > Cologne-pm at pm.org > http://mail.pm.org/mailman/listinfo/cologne-pm From uli at youam.net Thu Nov 10 12:25:33 2005 From: uli at youam.net (Uli Martens) Date: Thu, 10 Nov 2005 21:25:33 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <1131653516.2581.61.camel@dervish> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> Message-ID: <20051110202533.GD11368@ciara.youam.de> On Thu, Nov 10, 2005 at 09:11:56PM +0100, Cem Sakaryali wrote: > On Thu, 2005-11-10 at 19:30 +0100, A. Pagaltzis wrote: > > Warum gzippst du die Dateien alle einzeln und packst sie dann in > > einen unkomprimierten Tarball? W?re es andersrum nicht viel > > sinnvoller? > > > > Dies ist historisch entstanden, ich hatte wenig Platz auf > der Platte und tar danach gz hat die Platte voll gemacht. Ja, das Problem habe ich auch andauernd. Es w?re zu praktisch, wenn es eine M?glichkeit geben w?rde, wenn tar selbst die Daten komprimiert bzw. durch andere Programme komprimieren l?sst, ohne sie erst auf die Festplatte zu schreiben. Zu schade, dass das nicht geht... SCNR, Uli From cem.sakaryali at easi.de Thu Nov 10 12:45:32 2005 From: cem.sakaryali at easi.de (Cem Sakaryali) Date: Thu, 10 Nov 2005 21:45:32 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <20051110202533.GD11368@ciara.youam.de> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> <20051110202533.GD11368@ciara.youam.de> Message-ID: <1131655532.2581.66.camel@dervish> unter linux gibt es eine Option -z. Aber ich habe HP-UX bei der arbeit :) On Thu, 2005-11-10 at 21:25 +0100, Uli Martens wrote: > On Thu, Nov 10, 2005 at 09:11:56PM +0100, Cem Sakaryali wrote: > > On Thu, 2005-11-10 at 19:30 +0100, A. Pagaltzis wrote: > > > > Warum gzippst du die Dateien alle einzeln und packst sie dann in > > > einen unkomprimierten Tarball? W?re es andersrum nicht viel > > > sinnvoller? > > > > > > > Dies ist historisch entstanden, ich hatte wenig Platz auf > > der Platte und tar danach gz hat die Platte voll gemacht. > > Ja, das Problem habe ich auch andauernd. Es w?re zu praktisch, wenn es > eine M?glichkeit geben w?rde, wenn tar selbst die Daten komprimiert bzw. > durch andere Programme komprimieren l?sst, ohne sie erst auf die > Festplatte zu schreiben. Zu schade, dass das nicht geht... > > SCNR, > Uli > _______________________________________________ > Cologne-pm mailing list > Cologne-pm at pm.org > http://mail.pm.org/mailman/listinfo/cologne-pm From uli at youam.net Thu Nov 10 12:48:46 2005 From: uli at youam.net (Uli Martens) Date: Thu, 10 Nov 2005 21:48:46 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <1131655532.2581.66.camel@dervish> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> <20051110202533.GD11368@ciara.youam.de> <1131655532.2581.66.camel@dervish> Message-ID: <20051110204846.GE11368@ciara.youam.de> On Thu, Nov 10, 2005 at 09:45:32PM +0100, Cem Sakaryali wrote: > unter linux gibt es eine Option -z. > Aber ich habe HP-UX bei der arbeit :) Auch unter HP-UX gibt es Pipes. mfg, Uli From cem.sakaryali at easi.de Thu Nov 10 12:53:08 2005 From: cem.sakaryali at easi.de (Cem Sakaryali) Date: Thu, 10 Nov 2005 21:53:08 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <20051110204846.GE11368@ciara.youam.de> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> <20051110202533.GD11368@ciara.youam.de> <1131655532.2581.66.camel@dervish> <20051110204846.GE11368@ciara.youam.de> Message-ID: <1131655988.2581.69.camel@dervish> kannst Du mir ein Beispiel geben? etwa so? tar cvf dir1.tar dir1/ | gzip On Thu, 2005-11-10 at 21:48 +0100, Uli Martens wrote: > On Thu, Nov 10, 2005 at 09:45:32PM +0100, Cem Sakaryali wrote: > > unter linux gibt es eine Option -z. > > Aber ich habe HP-UX bei der arbeit :) > > Auch unter HP-UX gibt es Pipes. > > mfg, > Uli > _______________________________________________ > Cologne-pm mailing list > Cologne-pm at pm.org > http://mail.pm.org/mailman/listinfo/cologne-pm From mail.pm.org at netfibel.de Thu Nov 10 13:02:17 2005 From: mail.pm.org at netfibel.de (=?iso-8859-1?Q?Michael_Schr=F6der?=) Date: Thu, 10 Nov 2005 22:02:17 +0100 Subject: [Cologne-pm] Neuer Eintrag auf der Liste Message-ID: <000401c5e63a$08c7a340$0200a8c0@hal1300> Hallo, >> Es gibt 'ne Menge Subscribers auf der Liste, von denen noch nie >> jemand >> 'was gesagt hat. Irgendeine Motivation, sich zu subscriben, musste >> doch vorhanden sein... >Das w?sste ich auch nur zu gern Ich schreibe schon seit ?ber 5 Jahren Perl Scripte habe aber noch kaum jemanden getroffen, der auch ein wenig Perl beherrscht. Leider ist K?ln nicht mal eben so zu erreichen bzw. mangelt es mir ein wenig an Zeit. Als ich mich in die Liste eingetragen habe war das noch anders. Aber wie es im Leben so ist - as time goes by. Hab mir Perl auch weitergehend selbst beigebracht und bin auch kein Verfechter von use strict; und mag auch lieber deutsche Variablenbezeichnungen. Fakt ist - meine Scripte laufen erfolgreich. Darauf kommt es doch an - oder? Perl auf der Shell einzusetzen finde ich genial. Warum soll ich mich mit Dem unn?tigen Ballast der Extras von z.B. C rumschlagen, wenn > `perl *.cgi` genauso gut ist wie > `*.sh` Gru? Michael From cem.sakaryali at easi.de Thu Nov 10 13:05:40 2005 From: cem.sakaryali at easi.de (Cem Sakaryali) Date: Thu, 10 Nov 2005 22:05:40 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <1131653516.2581.61.camel@dervish> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> Message-ID: <1131656740.2581.74.camel@dervish> http://search.cpan.org/~aristotle/Proc-Fork-0.11/lib/Proc/Fork.pm Proc::Fork Ist ja sogar von Dir :) On Thu, 2005-11-10 at 21:11 +0100, Cem Sakaryali wrote: > Hi Aristoteles, > > Eine Anmerkung am Rande, kann man bei unserer Mailingliste > Reply To: cologne-pm at pm.org einstellen? > > Wenn ich einfach > reply mache geht es nur an den sender. Wenn man reply to all > macht bekommt der sender die Mail 2 mal. > > Z.B wenn Mike mir antwortet bekomme ich die Mail 2 mal. > > > On Thu, 2005-11-10 at 19:30 +0100, A. Pagaltzis wrote: > > Hi Cem, > > > > * Cem Sakaryali [2005-11-10 11:55]: > > > Meine Frage ist, da die einzelne Dir's mitteinander nichts > > > zutun haben wuerde ich sie parallel auf mehreren maschienen > > > starten. Wie kann ich dies machen? > > > > Auf mehreren Maschinen, oder auf mehreren CPUs? Oder? was? :-) > > Eigentlich auf mehreren Maschinenen wobei jeder von denen 2 > CPUs hat. Also beides :) Also 2 Maschinen fuer 4 directorys. > > Ich habe das Modul fork gefunden, ich denke dieses Modul > kann auf eine Maschiene 2 prozesse erzeugen. Leider geh?rt > fork nich zu standart perl und ich habe keine Ahnung ob > es sich auf meiner Maschiene installieren l?sst. > > > > > Ehrlich gesagt w?rde ich f?r diese Aufgabe garkein Perl > > schreiben, sondern einfach Shell verwenden und die > > Parallelausf?hrung per ?blicher Jobkontrolle erledigen. Diese > > Aufgaben sind schliesslich der ganze Lebenssinn der Shell. > > > > Zum Skript ein Haufen Kommentare: > > > > > my $DirectoryWhereToPut = '/backup'; > > > > Der englische Begriff daf?r ist ?brigens ?destination?. > > > > > my ($stund,$min,$sec,$tag,$monat,$jahr)=get_time (); > > > > > > foreach my $Dir (keys %hash) { > > > my $TarFileName = > > > "$Dir"."BACKUP"."_"."$jahr"."_"."$monat"."_"."$tag\.tar"; > > > CompressFile ($Dir,$TarFileName); > > > MoveFile ($TarFileName,$DirectoryWhereToPut); > > > } > > > > Das ist in vielerlei Hinsicht unsch?n. > > > > Als allerallererstes: bitte Variablen nicht allein in > > Anf?hrungszeicehn setzen. Perl ist keine Shell. (Ja, es gibt > > einen subtilen Unterschied ? der zeigt sich zB. bei Referenzen, > > die mit Anf?hrungszeichen nicht funktionieren.) > > > > Der Backslash ist ?brigens ?berfl?ssig. > > > > Ausserdem baust du den immer gleichen String aus denselben > > drei von sechs Variablen zusammen ? die anderen drei werden > > garnicht verwendet. Sch?ner ist es, weniger Code zu schreiben, > > indem du einfach die POSIX-Funktion `strftime` verwendest ? sowas > > wie ein `printf` f?r Datums- und Zeitangaben. > > > > Und ausserdem: ist es deine Absicht, dass zwischen $Dir und dem > > String ?BACKUP? kein Verzeichnistrenner steht? Im Grossen und > > Ganzen ist es anzuraten, Pfade mit den Funktionen aus File::Spec > > zusammenzubauen, statt sie mit blossen String-Operationen > > zusammenzukleben. > > > > > sub CompressFile { > > > my ($Dir,$TarFileName) =@_; > > > # gzip it > > > system ("gzip -rf $Dir/\*"); > > > print "gzip $Dir done\n"; > > > # tar it > > > system ("tar cvf $TarFileName $Dir/\*"); > > > print "tar $TarFileName done\n"; > > > return; > > > } > > > > Warum gzippst du die Dateien alle einzeln und packst sie dann in > > einen unkomprimierten Tarball? W?re es andersrum nicht viel > > sinnvoller? > > > > Dies ist historisch entstanden, ich hatte wenig Platz auf > der Platte und tar danach gz hat die Platte voll gemacht. > > Deine Vorschl?ge werde ich mir morgen bei der Arbeit > anschauen. > > Vielen Dank > Cem > > > > > sub MoveFile { > > > my ($TarFileName,$DirectoryWhereToPut) =@_; > > > # move it to DirectoryWhereToPut > > > system ("mv $TarFileName $DirectoryWhereToPut"); > > > print "move $TarFileName to $DirectoryWhereToPut done\n"; > > > return; > > > } > > > > `system( $langer_string )` ist unsch?n. Enthalten deine > > Dateinamen zuf?llig mal Leerzeichen oder andere Metazeichen, hast > > du ein Problem. Eindeutig und sicher ist > > `system( $programm, @parameter )`. > > > > > sub get_time { > > > my ($sec,$min,$stund,$tag,$monat,$jahr,$junk,$day_of_year)=localtime(); > > > $tag= sprintf "%2.2d",$tag; > > > $monat=sprintf "%2.2d",$monat+1; > > > return ($stund,$min,$sec,$tag,$monat,($jahr+1900)); > > > } > > > > Anmerkung am Rande: du kannst auch einfach `%2d` schreiben ? ich > > glaube nicht, dass du tats?chlich an Nachkommastellen > > interessiert bist? > > > > Summa summarum w?rde ich dieses Skript so oder ?hnlich schreiben: > > > > #!/usr/bin/perl > > use strict; > > use warnings; > > > > use Getopt::Long; > > use POSIX qw( strftime ); > > > > GetOptions( > > 'destdir|d=s' => \( my $opt_destination = '/backup' ), > > 'srcdir|s=s' => \( my %opt_srcdir ), > > ); > > > > if( not %opt_srcdir ) { > > %opt_srcdir = ( > > # directory name directory where to put > > a => 'cem/a' , > > b => 'cem/b' , > > c => 'cem/c' , > > d => 'cem/d' , > > ); > > } > > > > my $ymd = strftime '%Y_%m_%d', localtime; > > > > foreach my $dir ( keys %opt_srcdir ) { > > my $tarball = "${dir}BACKUP_${ymd}.tar.gz"; > > run_cmd( tar => 'cvzf', $tarball, $dir ); > > run_cmd( mv => $tarball, $opt_destination ); > > } > > > > sub run_cmd { > > system { $_[ 0 ] } @_; > > print "Done: @_\n"; > > } > > > > (Code ohne Gew?hr.) > > > > Das ist etwas hakelig, weil dein Mapping-Hash noch nicht richtig > > verwendet wird? aber naja, es ist halt zu erkennen, wie es > > aussehen sollte. > > > > Um es richtig rund zu machen fehlen da jetzt noch etwas POD und > > ein paar Aufrufe von Pod::Usage. > > > > Gruss, > > -- > > #Aristoteles > > *AUTOLOAD=*_=sub{s/(.*)::(.*)/print$2,(",$\/"," ")[defined wantarray]/e;$1}; > > &Just->another->Perl->hacker; > > _______________________________________________ > > Cologne-pm mailing list > > Cologne-pm at pm.org > > http://mail.pm.org/mailman/listinfo/cologne-pm > > _______________________________________________ > Cologne-pm mailing list > Cologne-pm at pm.org > http://mail.pm.org/mailman/listinfo/cologne-pm From pagaltzis at gmx.de Thu Nov 10 13:08:47 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Thu, 10 Nov 2005 22:08:47 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <1131653516.2581.61.camel@dervish> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> Message-ID: <20051110210847.GP29499@klangraum> * Cem Sakaryali [2005-11-10 21:15]: > Eine Anmerkung am Rande, kann man bei unserer Mailingliste > Reply To: cologne-pm at pm.org einstellen? Bessere Mailclients haben eine ?list-reply?-Funktion. ;-) Ob man das bei dieser Liste individuell einstellen kann, weiss ich nicht, aber wenn es querbeet als Default f?r alle Subscriber eingestellt w?re, w?rde ich mich beschweren. Das macht n?mlich private off-list Antworten massiv umst?ndlich. > Z.B wenn Mike mir antwortet bekomme ich die Mail 2 mal. Der ist wohl zu faul, ?subscribe cologne-pm at pm.org? in seine .muttrc zu schreiben und dann f?r Antworten an die Liste ?L? zu verwenden. > > Warum gzippst du die Dateien alle einzeln und packst sie dann > > in einen unkomprimierten Tarball? W?re es andersrum nicht > > viel sinnvoller? > > Dies ist historisch entstanden, ich hatte wenig Platz auf der > Platte und tar danach gz hat die Platte voll gemacht. Wie Uli schon mit gekonnter Ironie andeutete ? du kannst tar per ?-z? sagen, es soll selber gzippen, sodass garkeine tempor?ren Dateien entstehen. So wie ich es im Beispielcode gemacht habe? Gruss, -- Aristoteles ?Wer nicht ?ber sich selbst lachen kann, nimmt das Leben nicht ernst genug.? From pagaltzis at gmx.de Thu Nov 10 13:10:41 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Thu, 10 Nov 2005 22:10:41 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <1131655988.2581.69.camel@dervish> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> <20051110202533.GD11368@ciara.youam.de> <1131655532.2581.66.camel@dervish> <20051110204846.GE11368@ciara.youam.de> <1131655988.2581.69.camel@dervish> Message-ID: <20051110211041.GQ29499@klangraum> * Cem Sakaryali [2005-11-10 21:55]: > kannst Du mir ein Beispiel geben? > > etwa so? > tar cvf dir1.tar dir1/ | gzip tar cvf - dir/ | gzip > dir.tar.gz Gruss, -- #Aristoteles *AUTOLOAD=*_=sub{s/(.*)::(.*)/print$2,(",$\/"," ")[defined wantarray]/e;$1}; &Just->another->Perl->hacker; From uli at youam.net Thu Nov 10 13:10:06 2005 From: uli at youam.net (Uli Martens) Date: Thu, 10 Nov 2005 22:10:06 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <1131655988.2581.69.camel@dervish> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> <20051110202533.GD11368@ciara.youam.de> <1131655532.2581.66.camel@dervish> <20051110204846.GE11368@ciara.youam.de> <1131655988.2581.69.camel@dervish> Message-ID: <20051110211006.GF11368@ciara.youam.de> On Thu, Nov 10, 2005 at 09:53:08PM +0100, Cem Sakaryali wrote: > kannst Du mir ein Beispiel geben? > > etwa so? > tar cvf dir1.tar dir1/ | gzip Fast. tar f , ansonsten wird stdin (tar [cat]) oder stdout (tar x) genommen. Also entweder | tar cvf outfile.tar files oder | tar cv files > outfile.tar bzw | tar cv files | gzip > outfile.tar.gz entsprechend andersrum: | zcat outfile.tar.gz | tar xv HTH, Uli From uli at youam.net Thu Nov 10 13:13:27 2005 From: uli at youam.net (Uli Martens) Date: Thu, 10 Nov 2005 22:13:27 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <20051110211006.GF11368@ciara.youam.de> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> <20051110202533.GD11368@ciara.youam.de> <1131655532.2581.66.camel@dervish> <20051110204846.GE11368@ciara.youam.de> <1131655988.2581.69.camel@dervish> <20051110211006.GF11368@ciara.youam.de> Message-ID: <20051110211327.GG11368@ciara.youam.de> On Thu, Nov 10, 2005 at 10:10:06PM +0100, Uli Martens wrote: > | tar cvf outfile.tar files > | tar cv files > outfile.tar > | tar cv files | gzip > outfile.tar.gz > | zcat outfile.tar.gz | tar xv ^ Ein wenig ungl?cklich. Die erste Pipe pro Zeile heisst nat?rlich "hier kommt ein gequotetes Kommando", geh?rt also nicht zum Befehl selbst... From pagaltzis at gmx.de Thu Nov 10 13:14:32 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Thu, 10 Nov 2005 22:14:32 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <1131656740.2581.74.camel@dervish> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> <1131656740.2581.74.camel@dervish> Message-ID: <20051110211432.GR29499@klangraum> * Cem Sakaryali [2005-11-10 22:10]: > http://search.cpan.org/~aristotle/Proc-Fork-0.11/lib/Proc/Fork.pm > > Proc::Fork Ist ja sogar von Dir :) :-) Die aktuelle Version jedenfalls. Geschrieben hat das Modul urspr?nglich jemand anders, der mir, nachdem er ewig lang nicht dazu kam, meinen Patch zum Umkrempeln und Aufr?umen der Interna durchzugucken, kurzerhand die Pflege des Moduls ?berlassen hat. Allerdings glaube ich, willst du hier wirklich nicht mit Perl arbeiten ? das kann die Shell viel besser. Gruss, -- Aristoteles ?Wer nicht ?ber sich selbst lachen kann, nimmt das Leben nicht ernst genug.? From cem.sakaryali at easi.de Thu Nov 10 13:22:37 2005 From: cem.sakaryali at easi.de (Cem Sakaryali) Date: Thu, 10 Nov 2005 22:22:37 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <20051110210847.GP29499@klangraum> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> <20051110210847.GP29499@klangraum> Message-ID: <1131657757.2581.82.camel@dervish> On Thu, 2005-11-10 at 22:08 +0100, A. Pagaltzis wrote: > * Cem Sakaryali [2005-11-10 21:15]: > > Eine Anmerkung am Rande, kann man bei unserer Mailingliste > > Reply To: cologne-pm at pm.org einstellen? > > Bessere Mailclients haben eine ?list-reply?-Funktion. ;-) > > Ob man das bei dieser Liste individuell einstellen kann, weiss > ich nicht, aber wenn es querbeet als Default f?r alle Subscriber > eingestellt w?re, w?rde ich mich beschweren. Das macht n?mlich > private off-list Antworten massiv umst?ndlich. > > > Z.B wenn Mike mir antwortet bekomme ich die Mail 2 mal. > > Der ist wohl zu faul, ?subscribe cologne-pm at pm.org? in seine > .muttrc zu schreiben und dann f?r Antworten an die Liste ?L? zu > verwenden. > > > > Warum gzippst du die Dateien alle einzeln und packst sie dann > > > in einen unkomprimierten Tarball? W?re es andersrum nicht > > > viel sinnvoller? > > > > Dies ist historisch entstanden, ich hatte wenig Platz auf der > > Platte und tar danach gz hat die Platte voll gemacht. > > Wie Uli schon mit gekonnter Ironie andeutete ? du kannst tar per > ?-z? sagen, es soll selber gzippen, sodass garkeine tempor?ren > Dateien entstehen. > naja ich habe etwas gelernt und ihr habt spass gehabt. Ist doch ok :) Gruss Cem > So wie ich es im Beispielcode gemacht habe? > > Gruss, > -- > Aristoteles > ?Wer nicht ?ber sich selbst lachen kann, nimmt das Leben nicht ernst genug.? > _______________________________________________ > Cologne-pm mailing list > Cologne-pm at pm.org > http://mail.pm.org/mailman/listinfo/cologne-pm From pagaltzis at gmx.de Thu Nov 10 13:37:41 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Thu, 10 Nov 2005 22:37:41 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <20051110211327.GG11368@ciara.youam.de> <20051110211006.GF11368@ciara.youam.de> References: <20051110211006.GF11368@ciara.youam.de> <20051110211327.GG11368@ciara.youam.de> <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> <20051110202533.GD11368@ciara.youam.de> <1131655532.2581.66.camel@dervish> <20051110204846.GE11368@ciara.youam.de> <1131655988.2581.69.camel@dervish> <20051110211006.GF11368@ciara.youam.de> Message-ID: <20051110213741.GS29499@klangraum> * Uli Martens [2005-11-10 22:15]: > | tar cv files > outfile.tar GNU tar macht das mit, andere nicht unbedingt. (Einige Varianten wollen dann zB. gleich aufs Bandlaufwerk schreiben.) Besser, du gibst ?-f -? immer explizit an. * Uli Martens [2005-11-10 22:15]: > Ein wenig ungl?cklich. Die erste Pipe pro Zeile heisst > nat?rlich "hier kommt ein gequotetes Kommando", geh?rt also > nicht zum Befehl selbst... Mein Vorschlag w?re einfaches Einr?cken um 4 Leerschritte ? das ist eindeutlich genug und nervt den Emp?nger beim Copypasten aus der Mail auch relativ wenig. (Vorzugsweise verwende man einen Editor, mit dem man blockweise l?schen und/oder absatzweise ein-/ausr?cken kann. So wie Vim. :-) ) Gruss, -- Aristoteles ?Wer nicht ?ber sich selbst lachen kann, nimmt das Leben nicht ernst genug.? From pagaltzis at gmx.de Thu Nov 10 13:39:33 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Thu, 10 Nov 2005 22:39:33 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <1131657757.2581.82.camel@dervish> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> <20051110210847.GP29499@klangraum> <1131657757.2581.82.camel@dervish> Message-ID: <20051110213933.GT29499@klangraum> * Cem Sakaryali [2005-11-10 22:25]: > naja ich habe etwas gelernt und ihr habt spass gehabt. Ist doch > ok :) Hat ja auch keiner was gesagt. :-) Nicht zuallerletzt haben wir ja auch ein bisschen Schwung auf der Liste ? das ist auch nicht zu verachten! Gruss, -- Aristoteles ?Wer nicht ?ber sich selbst lachen kann, nimmt das Leben nicht ernst genug.? From mike at lamertz.net Thu Nov 10 13:47:37 2005 From: mike at lamertz.net (Michael Lamertz) Date: Thu, 10 Nov 2005 22:47:37 +0100 Subject: [Cologne-pm] (fwd) FW: Zu gestern abend; perl "-x" Message-ID: <20051110214736.GH4653@lamertz.net> Wg. Bounce von mir weiter geleitet... -- Well, then let's give that Java-Wussie a beating... (me) Michael Lamertz | +49 2234 204947 / +49 171 6900 310 Sandstr. 122 | mike at lamertz.net 50226 Frechen | http://www.lamertz.net Germany | http://www.perl-ronin.de -------------- next part -------------- An embedded message was scrubbed... From: Philip Zembrod Subject: FW: Zu gestern abend; perl "-x" Date: Thu, 10 Nov 2005 16:21:08 +0100 Size: 3331 Url: http://mail.pm.org/pipermail/cologne-pm/attachments/20051110/b84f9450/attachment-0001.mht From uli at youam.net Thu Nov 10 13:55:30 2005 From: uli at youam.net (Uli Martens) Date: Thu, 10 Nov 2005 22:55:30 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <20051110213741.GS29499@klangraum> References: <20051110211327.GG11368@ciara.youam.de> <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> <20051110202533.GD11368@ciara.youam.de> <1131655532.2581.66.camel@dervish> <20051110204846.GE11368@ciara.youam.de> <1131655988.2581.69.camel@dervish> <20051110211006.GF11368@ciara.youam.de> <20051110213741.GS29499@klangraum> Message-ID: <20051110215530.GA19493@ciara.youam.de> On Thu, Nov 10, 2005 at 10:37:41PM +0100, A. Pagaltzis wrote: > Mein Vorschlag w?re einfaches Einr?cken um 4 Leerschritte ??? das > ist eindeutlich genug und nervt den Emp?nger beim Copypasten aus > der Mail auch relativ wenig. (Vorzugsweise verwende man einen > Editor, mit dem man blockweise l?schen und/oder absatzweise > ein-/ausr?cken kann. So wie Vim. :-) ) http://groups.google.com/group/de.alt.sysadmin.recovery/msg/d2e60329a4f7144d From pagaltzis at gmx.de Thu Nov 10 14:43:36 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Thu, 10 Nov 2005 23:43:36 +0100 Subject: [Cologne-pm] Zu gestern abend; perl "-x" In-Reply-To: <20051110214736.GH4653@lamertz.net> References: <20051110214736.GH4653@lamertz.net> Message-ID: <20051110224336.GV29499@klangraum> Hi Philip, * Philip Zembrod [2005-11-10 16:21]: > Mike, ich hab nochmal ?ber Deinen Wunsch nach einem > perl-Equivalent zu sh -x nachgedacht (ich hab mich beim > debuggen meiner automatischen GUI-Tests etwas mehr mit den > Interna des perl-Debuggers besch?ftigen m?ssen). Mein Vorschlag: Der Abstract des Moduls: ?Print out each line before it is executed (like sh -x)? Kommt mir irgendwie bekannt vor? *g* > Aristoteles, die Geschichte mit dem Hochspannungskabel ist ja > wirklich versch?rft. Nicht? Hab sie gestern abend selbst nochmal ?berflogen. S?mtliche Zahlen sind einfach beeindruckend, aber IMHO stechen die die Gewalt des karbonierten ?ls am Unterbrecher (3000 ft = 900 m, 200 PSI = 14 bar) und die des Thumpers hervor. Gruss, -- #Aristoteles *AUTOLOAD=*_=sub{s/(.*)::(.*)/print$2,(",$\/"," ")[defined wantarray]/e;$1}; &Just->another->Perl->hacker; From mike at lamertz.net Thu Nov 10 14:48:11 2005 From: mike at lamertz.net (Michael Lamertz) Date: Thu, 10 Nov 2005 23:48:11 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <20051110183014.GN29499@klangraum> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> Message-ID: <20051110224811.GJ4653@lamertz.net> On Thu, Nov 10, 2005 at 07:30:14PM +0100, A. Pagaltzis wrote: > Hi Cem, > > Ehrlich gesagt w?rde ich f?r diese Aufgabe garkein Perl > schreiben, sondern einfach Shell verwenden und die > Parallelausf?hrung per ?blicher Jobkontrolle erledigen. Diese > Aufgaben sind schliesslich der ganze Lebenssinn der Shell. Hear, hear! Und da Aristoteles es sogar schon fuer mich geparsed und aufgeraeumt hat, kann ich eigentlich nur noch mit eben dieser Version vervollstaendigen. backup () { dst=$1; shift 1 [ ! -d $dst ] && mkdir -p $dst timestamp=`date +%Y%m%d` for src in "$@"; do base=`basename $src` tar cvzf $dst/$base-$timestamp.tar.gz $src & # <---- note, in den Hintergrund damit, wenn Du zuviele CPUs uebrig hast. done } Oder direkt in der Kommandozeile: for i in src_dir/*; do tar cvzf dst_dir/`basename $i`-`date +%Y%m%d`.tar.gz; done Oder wieder die Big-Iron-Version: for i in src_dir/*; do tar cvzf dst_dir/`basename $i`-`date +%Y%m%d`.tar.gz& done Mike -- Well, then let's give that Java-Wussie a beating... (me) Michael Lamertz | +49 2234 204947 / +49 171 6900 310 Sandstr. 122 | mike at lamertz.net 50226 Frechen | http://www.lamertz.net Germany | http://www.perl-ronin.de From mike at lamertz.net Thu Nov 10 14:55:19 2005 From: mike at lamertz.net (Michael Lamertz) Date: Thu, 10 Nov 2005 23:55:19 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <1131653516.2581.61.camel@dervish> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> Message-ID: <20051110225519.GK4653@lamertz.net> On Thu, Nov 10, 2005 at 09:11:56PM +0100, Cem Sakaryali wrote: > Hi Aristoteles, > > Eine Anmerkung am Rande, kann man bei unserer Mailingliste > Reply To: cologne-pm at pm.org einstellen? Ja, kann man, aber das Interface hat "Poster" als Default und kommentiert diesen mit "Where are replies to list messages directed? Poster is strongly recommended for most mailing lists." > Wenn ich einfach reply mache geht es nur an den sender. Wenn man reply > to all macht bekommt der sender die Mail 2 mal. Der geneigte Leser empfiehlt procmail > > Auf mehreren Maschinen, oder auf mehreren CPUs? Oder... was? :-) > > Eigentlich auf mehreren Maschinenen wobei jeder von denen 2 > CPUs hat. Also beides :) Also 2 Maschinen fuer 4 directorys. > > Ich habe das Modul fork gefunden, ich denke dieses Modul > kann auf eine Maschiene 2 prozesse erzeugen. Leider geh?rt > fork nich zu standart perl und ich habe keine Ahnung ob > es sich auf meiner Maschiene installieren l?sst. Auf Maschinen auf denen Gott wollte, dass Perl laeuft, funktioniert das in Perl eingebaute 'fork' >;-> Aber sach'mal, von wie vielen Daten reden wir hier eigentlich, dass Du das auf mehrere Maschinen verteilen willst? Ich meine, selbst im Gigabyte-Bereich ist sowas doch in ein paar minuetchen im Hintergrund erledigt. -- Well, then let's give that Java-Wussie a beating... (me) Michael Lamertz | +49 2234 204947 / +49 171 6900 310 Sandstr. 122 | mike at lamertz.net 50226 Frechen | http://www.lamertz.net Germany | http://www.perl-ronin.de From mike at lamertz.net Thu Nov 10 14:58:30 2005 From: mike at lamertz.net (Michael Lamertz) Date: Thu, 10 Nov 2005 23:58:30 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <20051110204846.GE11368@ciara.youam.de> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> <20051110202533.GD11368@ciara.youam.de> <1131655532.2581.66.camel@dervish> <20051110204846.GE11368@ciara.youam.de> Message-ID: <20051110225830.GL4653@lamertz.net> On Thu, Nov 10, 2005 at 09:48:46PM +0100, Uli Martens wrote: > On Thu, Nov 10, 2005 at 09:45:32PM +0100, Cem Sakaryali wrote: > > unter linux gibt es eine Option -z. > > Aber ich habe HP-UX bei der arbeit :) > > Auch unter HP-UX gibt es Pipes. Oder ein GNU-Tar War das bei Bull, wo's HP-UX-Pakete von GNU-Software gab? Oder war das doch fuer AIX? -- Well, then let's give that Java-Wussie a beating... (me) Michael Lamertz | +49 2234 204947 / +49 171 6900 310 Sandstr. 122 | mike at lamertz.net 50226 Frechen | http://www.lamertz.net Germany | http://www.perl-ronin.de From mike at lamertz.net Thu Nov 10 15:03:35 2005 From: mike at lamertz.net (Michael Lamertz) Date: Fri, 11 Nov 2005 00:03:35 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <20051110210847.GP29499@klangraum> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> <20051110210847.GP29499@klangraum> Message-ID: <20051110230335.GM4653@lamertz.net> On Thu, Nov 10, 2005 at 10:08:47PM +0100, A. Pagaltzis wrote: > Ob man das bei dieser Liste individuell einstellen kann, weiss > ich nicht, aber wenn es querbeet als Default f?r alle Subscriber > eingestellt w?re, w?rde ich mich beschweren. Das macht n?mlich > private off-list Antworten massiv umst?ndlich. Yepp. > > Z.B wenn Mike mir antwortet bekomme ich die Mail 2 mal. > > Der ist wohl zu faul, ?subscribe cologne-pm at pm.org? in seine > .muttrc zu schreiben und dann f?r Antworten an die Liste ?L? zu > verwenden. Nope, der macht das absichtlich. Viele foldern List-Nachrichten erstmal wech und wenn derjenige auf 'ne Antwort wartet - und nicht doubles von procmail ohnehin 'rausloeschen laesst - bekommt er zusaetzlich eine an seine eigene Adresse. Ist 'ne Angewohnheit - vielleicht 'ne diskussionswuerdige, aber ich bin zu alt um mich noch zu verbiegen ;-) -- Well, then let's give that Java-Wussie a beating... (me) Michael Lamertz | +49 2234 204947 / +49 171 6900 310 Sandstr. 122 | mike at lamertz.net 50226 Frechen | http://www.lamertz.net Germany | http://www.perl-ronin.de From pagaltzis at gmx.de Thu Nov 10 15:08:14 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Fri, 11 Nov 2005 00:08:14 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <20051110225519.GK4653@lamertz.net> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> <20051110225519.GK4653@lamertz.net> Message-ID: <20051110230814.GW29499@klangraum> * Michael Lamertz [2005-11-11 00:00]: > Auf Maschinen auf denen Gott wollte, dass Perl laeuft, > funktioniert das in Perl eingebaute 'fork' >;-> :-) Er redet von Proc::Fork, das ist ein schicker ?Perl-ish? Wrapper um fork() (dessen Pflege wie bereits gesagt jetzt mir obliegt). Gruss, -- Aristoteles ?Wer nicht ?ber sich selbst lachen kann, nimmt das Leben nicht ernst genug.? From mike at lamertz.net Thu Nov 10 15:11:44 2005 From: mike at lamertz.net (Michael Lamertz) Date: Fri, 11 Nov 2005 00:11:44 +0100 Subject: [Cologne-pm] Zu gestern abend; perl "-x" In-Reply-To: <20051110224336.GV29499@klangraum> References: <20051110214736.GH4653@lamertz.net> <20051110224336.GV29499@klangraum> Message-ID: <20051110231144.GN4653@lamertz.net> On Thu, Nov 10, 2005 at 11:43:36PM +0100, A. Pagaltzis wrote: > Hi Philip, > > * Philip Zembrod [2005-11-10 16:21]: > > Mike, ich hab nochmal ?ber Deinen Wunsch nach einem > > perl-Equivalent zu sh -x nachgedacht (ich hab mich beim > > debuggen meiner automatischen GUI-Tests etwas mehr mit den > > Interna des perl-Debuggers besch?ftigen m?ssen). @Philip (ganz vergessen, neben dem fwd noch 'drauf zu antworten @-) Ich wusste doch, dass es irgendwie mit 'ner Debugger-Subclass geht. :-) > Mein Vorschlag: *slap* and the forehead grows... > > Aristoteles, die Geschichte mit dem Hochspannungskabel ist ja > > wirklich versch?rft. > > Nicht? Hab sie gestern abend selbst nochmal ?berflogen. S?mtliche > Zahlen sind einfach beeindruckend, aber IMHO stechen die die > Gewalt des karbonierten ?ls am Unterbrecher (3000 ft = 900 m, 200 > PSI = 14 bar) und die des Thumpers hervor. Joh, der Hammer! Apropos Hammer, musste dann auch noch direkt Wikipedia wg. "Water Hammer" bemuehen, obwohl's mir beim lesen Deines Links direkt schon klar wurde ---------- http://en.wikipedia.org/wiki/Water_hammer ---------- Water hammer can cause pipelines to break or even explode if the pressure is high enough. ---------- http://en.wikipedia.org/wiki/Water_hammer ---------- und ---------- http://en.wikipedia.org/wiki/Water_hammer ---------- On the other hand, when a valve in a pipe is closed, the water downstream of the valve will attempt to continue flowing, creating a vacuum that may cause the pipe to collapse or implode. This problem can be particularly acute if the pipe is on a downhill slope. ---------- http://en.wikipedia.org/wiki/Water_hammer ---------- Ouch! -- Well, then let's give that Java-Wussie a beating... (me) Michael Lamertz | +49 2234 204947 / +49 171 6900 310 Sandstr. 122 | mike at lamertz.net 50226 Frechen | http://www.lamertz.net Germany | http://www.perl-ronin.de From mike at lamertz.net Thu Nov 10 15:16:22 2005 From: mike at lamertz.net (Michael Lamertz) Date: Fri, 11 Nov 2005 00:16:22 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <20051110230814.GW29499@klangraum> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> <20051110225519.GK4653@lamertz.net> <20051110230814.GW29499@klangraum> Message-ID: <20051110231622.GO4653@lamertz.net> On Fri, Nov 11, 2005 at 12:08:14AM +0100, A. Pagaltzis wrote: > * Michael Lamertz [2005-11-11 00:00]: > > Auf Maschinen auf denen Gott wollte, dass Perl laeuft, > > funktioniert das in Perl eingebaute 'fork' >;-> > > :-) > > Er redet von Proc::Fork, das ist ein schicker ?Perl-ish? Wrapper > um fork() (dessen Pflege wie bereits gesagt jetzt mir obliegt). Hmm, das hab' ich ein paar Nachrichten spaeter auch bemerkt (note to self: demnaechst ganzen thread lesen vor der Antwort). Aber: Wieso einen Wrapper der eine neue Syntax einfuehrt, fuer etwas, was jeder Unixer seit 25 Jahren idiomatisch benutzt? @-) Ich find' an fork irgendwie nix unintuitives. Nevermind - M. -- Well, then let's give that Java-Wussie a beating... (me) Michael Lamertz | +49 2234 204947 / +49 171 6900 310 Sandstr. 122 | mike at lamertz.net 50226 Frechen | http://www.lamertz.net Germany | http://www.perl-ronin.de From pagaltzis at gmx.de Thu Nov 10 15:28:27 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Fri, 11 Nov 2005 00:28:27 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <20051110231622.GO4653@lamertz.net> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <1131653516.2581.61.camel@dervish> <20051110225519.GK4653@lamertz.net> <20051110230814.GW29499@klangraum> <20051110231622.GO4653@lamertz.net> Message-ID: <20051110232827.GX29499@klangraum> * Michael Lamertz [2005-11-11 00:20]: > Aber: Wieso einen Wrapper der eine neue Syntax einfuehrt, fuer > etwas, was jeder Unixer seit 25 Jahren idiomatisch benutzt? Ich benutze fork() nur selten ? und muss dann immer einen Moment stutzen, um mir in Erinnerung zu rufen, was man im Mutter- und was im Tochterprozess macht. Ausserdem, finde ich, ist es beim Lesen einfach klarer. Wenn man keine Fehlerbehandlung macht, geht es ganz ?hnlich auch mit einem `if`, will man?s richtig machen, ist der Code aber einfach nicht mehr so klar in Blockstrukturen aufzuteilen. Naja. Geschmack. :-) Gruss, -- Aristoteles ?Like punning, programming is a play on words.? ? Alan J. Perlis, ?Epigrams in Programming? From cem.sakaryali at easi.de Fri Nov 11 00:38:44 2005 From: cem.sakaryali at easi.de (Cem Sakaryali) Date: Fri, 11 Nov 2005 09:38:44 +0100 (Westeuropäische Normalzeit) Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <20051110183014.GN29499@klangraum> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> Message-ID: <31848.136.8.152.14.1131698324.squirrel@dergah> Hallo Aristotales, Ich verstehe diesen Bereich nicht. run_cmd( tar => 'cvzf', $tarball, $dir ); Heisst es hier: Erzeuge eine Liste mit den Elementen tar,cvzf,$tarball,$dir wobei wenn ich das 0. Element (tar) benutze soll es aus der Liste geloescht werden. Oder ist die Magie in system { $_[ 0 ] } @_; Ich wuerde diesen Bereich sehr gerne uebernehmen aber will auch nach 1 Woche immer noch verstehen was ich tue. Danke Cem On Thu, November 10, 2005 19:30, A. Pagaltzis wrote: > Hi Cem, > > * Cem Sakaryali [2005-11-10 11:55]: >> Meine Frage ist, da die einzelne Dir's mitteinander nichts >> zutun haben wuerde ich sie parallel auf mehreren maschienen >> starten. Wie kann ich dies machen? > > Auf mehreren Maschinen, oder auf mehreren CPUs? Oder??? was? :-) > > Ehrlich gesagt w??rde ich f??r diese Aufgabe garkein Perl > schreiben, sondern einfach Shell verwenden und die > Parallelausf??hrung per ??blicher Jobkontrolle erledigen. Diese > Aufgaben sind schliesslich der ganze Lebenssinn der Shell. > > Zum Skript ein Haufen Kommentare: > >> my $DirectoryWhereToPut = '/backup'; > > Der englische Begriff daf??r ist ??brigens ??destination??. > >> my ($stund,$min,$sec,$tag,$monat,$jahr)=get_time (); >> >> foreach my $Dir (keys %hash) { >> my $TarFileName = >> "$Dir"."BACKUP"."_"."$jahr"."_"."$monat"."_"."$tag\.tar"; >> CompressFile ($Dir,$TarFileName); >> MoveFile ($TarFileName,$DirectoryWhereToPut); >> } > > Das ist in vielerlei Hinsicht unsch??n. > > Als allerallererstes: bitte Variablen nicht allein in > Anf??hrungszeicehn setzen. Perl ist keine Shell. (Ja, es gibt > einen subtilen Unterschied ??? der zeigt sich zB. bei Referenzen, > die mit Anf??hrungszeichen nicht funktionieren.) > > Der Backslash ist ??brigens ??berfl??ssig. > > Ausserdem baust du den immer gleichen String aus denselben > drei von sechs Variablen zusammen ??? die anderen drei werden > garnicht verwendet. Sch??ner ist es, weniger Code zu schreiben, > indem du einfach die POSIX-Funktion `strftime` verwendest ??? sowas > wie ein `printf` f??r Datums- und Zeitangaben. > > Und ausserdem: ist es deine Absicht, dass zwischen $Dir und dem > String ??BACKUP?? kein Verzeichnistrenner steht? Im Grossen und > Ganzen ist es anzuraten, Pfade mit den Funktionen aus File::Spec > zusammenzubauen, statt sie mit blossen String-Operationen > zusammenzukleben. > >> sub CompressFile { >> my ($Dir,$TarFileName) =@_; >> # gzip it >> system ("gzip -rf $Dir/\*"); >> print "gzip $Dir done\n"; >> # tar it >> system ("tar cvf $TarFileName $Dir/\*"); >> print "tar $TarFileName done\n"; >> return; >> } > > Warum gzippst du die Dateien alle einzeln und packst sie dann in > einen unkomprimierten Tarball? W??re es andersrum nicht viel > sinnvoller? > >> sub MoveFile { >> my ($TarFileName,$DirectoryWhereToPut) =@_; >> # move it to DirectoryWhereToPut >> system ("mv $TarFileName $DirectoryWhereToPut"); >> print "move $TarFileName to $DirectoryWhereToPut done\n"; >> return; >> } > > `system( $langer_string )` ist unsch??n. Enthalten deine > Dateinamen zuf??llig mal Leerzeichen oder andere Metazeichen, hast > du ein Problem. Eindeutig und sicher ist > `system( $programm, @parameter )`. > >> sub get_time { >> my >> ($sec,$min,$stund,$tag,$monat,$jahr,$junk,$day_of_year)=localtime(); >> $tag= sprintf "%2.2d",$tag; >> $monat=sprintf "%2.2d",$monat+1; >> return ($stund,$min,$sec,$tag,$monat,($jahr+1900)); >> } > > Anmerkung am Rande: du kannst auch einfach `%2d` schreiben ??? ich > glaube nicht, dass du tats??chlich an Nachkommastellen > interessiert bist??? > > Summa summarum w??rde ich dieses Skript so oder ??hnlich schreiben: > > #!/usr/bin/perl > use strict; > use warnings; > > use Getopt::Long; > use POSIX qw( strftime ); > > GetOptions( > 'destdir|d=s' => \( my $opt_destination = '/backup' ), > 'srcdir|s=s' => \( my %opt_srcdir ), > ); > > if( not %opt_srcdir ) { > %opt_srcdir = ( > # directory name directory where to put > a => 'cem/a' , > b => 'cem/b' , > c => 'cem/c' , > d => 'cem/d' , > ); > } > > my $ymd = strftime '%Y_%m_%d', localtime; > > foreach my $dir ( keys %opt_srcdir ) { > my $tarball = "${dir}BACKUP_${ymd}.tar.gz"; > run_cmd( tar => 'cvzf', $tarball, $dir ); > run_cmd( mv => $tarball, $opt_destination ); > } > > sub run_cmd { > system { $_[ 0 ] } @_; > print "Done: @_\n"; > } > > (Code ohne Gew??hr.) > > Das ist etwas hakelig, weil dein Mapping-Hash noch nicht richtig > verwendet wird??? aber naja, es ist halt zu erkennen, wie es > aussehen sollte. > > Um es richtig rund zu machen fehlen da jetzt noch etwas POD und > ein paar Aufrufe von Pod::Usage. > > Gruss, > -- > #Aristoteles > *AUTOLOAD=*_=sub{s/(.*)::(.*)/print$2,(",$\/"," ")[defined > wantarray]/e;$1}; > &Just->another->Perl->hacker; > _______________________________________________ > Cologne-pm mailing list > Cologne-pm at pm.org > http://mail.pm.org/mailman/listinfo/cologne-pm From mike at lamertz.net Fri Nov 11 01:30:08 2005 From: mike at lamertz.net (Michael Lamertz) Date: Fri, 11 Nov 2005 10:30:08 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <31848.136.8.152.14.1131698324.squirrel@dergah> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <31848.136.8.152.14.1131698324.squirrel@dergah> Message-ID: <20051111093008.GP4653@lamertz.net> On Fri, Nov 11, 2005 at 09:38:44AM +0100, Cem Sakaryali wrote: > Hallo Aristotales, > > > Ich verstehe diesen Bereich nicht. > > run_cmd( tar => 'cvzf', $tarball, $dir ); > > Heisst es hier: > Erzeuge eine Liste mit den Elementen > > tar,cvzf,$tarball,$dir > > wobei wenn ich das 0. Element (tar) benutze soll es aus > der Liste geloescht werden. > Oder ist die Magie in > > system { $_[ 0 ] } @_; > > Ich wuerde diesen Bereich sehr gerne uebernehmen aber will > auch nach 1 Woche immer noch verstehen was ich tue. Erschreckt Dich der => Operator? ---------- perldoc perlop ---------- The "=>" operator is a synonym for the comma, but forces any word (consisting entirely of word charac- ters) to its left to be interpreted as a string (as of 5.001). If the argument on the left is not a word, it is first interpreted as an expression, and then the string value of that is used. ---------- perldoc perlop ---------- Also, 'tar => 1,2,3' macht nix anderes, als Dir eine Liste ('tar', 1, 2, 3) zu erzeugen. Es ist nicht notwendig, das 1. Element zu loeschen, wenn Du system in der obigen Form benutzt: ---------- perldoc -f system ---------- Like "exec", "system" allows you to lie to a program about its name if you use the "system PROGRAM LIST" syntax. Again, see "exec". ---------- perldoc -f system ---------- Gibst Du also PROGRAM *ohne Komma* vor der Liste an, so ist dies das Programm, dass gestartet werden soll, waehrend das erste Element der Liste der Name ist, von dem das gestartete Programm denkt, wie es heisst. (Was fuer ein scheiss Satz @-) Btw.: Wusstet Ihr, dass $0 bei Perl von aussen anscheinend nicht ueberschrieben werden kann? Der Aufrufer: ---------- call.pl ---------- #!/usr/bin/perl system {shift} @ARGV; ---------- call.pl ---------- Ein kleines C-Prograemmchen: ---------- run.c ---------- #include int main(int argc, char **argv) { while (*argv) printf("%s\n", *argv++); } ---------- run.c ---------- Und dasselbe in Perl: ---------- run.pl ---------- #!/usr/bin/perl $\ = $, = "\n"; print $0, @ARGV; ---------- run.pl ---------- Ergebnis: ---------- snip ---------- tweety:~$ ./call ./run faked 1 2 3 faked 1 2 3 tweety:~$ ./call ./run.pl faked 1 2 3 ./run.pl 1 2 3 ---------- snip ---------- B0rk3n! Oder am I missing s/t? Mike -- Well, then let's give that Java-Wussie a beating... (me) Michael Lamertz | +49 2234 204947 / +49 171 6900 310 Sandstr. 122 | mike at lamertz.net 50226 Frechen | http://www.lamertz.net Germany | http://www.perl-ronin.de From cem.sakaryali at easi.de Fri Nov 11 01:47:35 2005 From: cem.sakaryali at easi.de (Cem Sakaryali) Date: Fri, 11 Nov 2005 10:47:35 +0100 (Westeuropäische Normalzeit) Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <20051111093008.GP4653@lamertz.net> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <31848.136.8.152.14.1131698324.squirrel@dergah> <20051111093008.GP4653@lamertz.net> Message-ID: <55186.136.8.152.14.1131702455.squirrel@dergah> Super! jetzt habe ich es verstanden. Danke Cem On Fri, November 11, 2005 10:30, Michael Lamertz wrote: > On Fri, Nov 11, 2005 at 09:38:44AM +0100, Cem Sakaryali wrote: >> Hallo Aristotales, >> >> >> Ich verstehe diesen Bereich nicht. >> >> run_cmd( tar => 'cvzf', $tarball, $dir ); >> >> Heisst es hier: >> Erzeuge eine Liste mit den Elementen >> >> tar,cvzf,$tarball,$dir >> >> wobei wenn ich das 0. Element (tar) benutze soll es aus >> der Liste geloescht werden. >> Oder ist die Magie in >> >> system { $_[ 0 ] } @_; >> >> Ich wuerde diesen Bereich sehr gerne uebernehmen aber will >> auch nach 1 Woche immer noch verstehen was ich tue. > > Erschreckt Dich der => Operator? > > ---------- perldoc perlop ---------- > The "=>" operator is a synonym for the comma, but forces any word > (consisting entirely of word charac- ters) to its left to be > interpreted as a string (as of 5.001). If the argument on the left > is not a word, it is first interpreted as an expression, and then > the string value of that is used. > ---------- perldoc perlop ---------- > > Also, 'tar => 1,2,3' macht nix anderes, als Dir eine Liste > ('tar', 1, 2, 3) zu erzeugen. > > Es ist nicht notwendig, das 1. Element zu loeschen, wenn Du system in > der obigen Form benutzt: > > ---------- perldoc -f system ---------- > Like "exec", "system" allows you to lie to a program about its name > if you use the "system PROGRAM LIST" syntax. Again, see "exec". > ---------- perldoc -f system ---------- > > Gibst Du also PROGRAM *ohne Komma* vor der Liste an, so ist dies das > Programm, dass gestartet werden soll, waehrend das erste Element der > Liste der Name ist, von dem das gestartete Programm denkt, wie es > heisst. (Was fuer ein scheiss Satz @-) > > Btw.: Wusstet Ihr, dass $0 bei Perl von aussen anscheinend nicht > ueberschrieben werden kann? > > Der Aufrufer: > ---------- call.pl ---------- > #!/usr/bin/perl > > system {shift} @ARGV; > ---------- call.pl ---------- > > Ein kleines C-Prograemmchen: > ---------- run.c ---------- > #include > > int main(int argc, char **argv) { > while (*argv) printf("%s\n", *argv++); > } > ---------- run.c ---------- > > Und dasselbe in Perl: > ---------- run.pl ---------- > #!/usr/bin/perl > > $\ = $, = "\n"; > print $0, @ARGV; > ---------- run.pl ---------- > > Ergebnis: > ---------- snip ---------- > tweety:~$ ./call ./run faked 1 2 3 > faked > 1 > 2 > 3 > tweety:~$ ./call ./run.pl faked 1 2 3 > ./run.pl > 1 > 2 > 3 > ---------- snip ---------- > > B0rk3n! Oder am I missing s/t? > > > Mike > > -- > Well, then let's give that Java-Wussie a beating... (me) > > Michael Lamertz | +49 2234 204947 / +49 171 > 6900 310 > Sandstr. 122 | > mike at lamertz.net > 50226 Frechen | > http://www.lamertz.net > Germany | > http://www.perl-ronin.de > _______________________________________________ > Cologne-pm mailing list > Cologne-pm at pm.org > http://mail.pm.org/mailman/listinfo/cologne-pm > From Philip.Zembrod at web.de Fri Nov 11 03:58:35 2005 From: Philip.Zembrod at web.de (Philip Zembrod) Date: Fri, 11 Nov 2005 12:58:35 +0100 Subject: [Cologne-pm] Hallo zusammen Message-ID: <393747331@web.de> Moin, jetzt sollte es mit der Anmeldung geklappt haben. Da bin ich also. Gru? Philip From mike at lamertz.net Fri Nov 11 04:27:58 2005 From: mike at lamertz.net (Michael Lamertz) Date: Fri, 11 Nov 2005 13:27:58 +0100 Subject: [Cologne-pm] Hallo zusammen In-Reply-To: <393747331@web.de> References: <393747331@web.de> Message-ID: <20051111122758.GR4653@lamertz.net> On Fri, Nov 11, 2005 at 12:58:35PM +0100, Philip Zembrod wrote: > > Moin, > > jetzt sollte es mit der Anmeldung geklappt haben. Da bin ich also. Siehst'e, geht doch! War das Anmelde-Dingens als SPAM markiert? Wenn ja, haette ich gerne den Grund. Evtl. kann man dann durch die Mailman-Config 'was drehen, damit sowas nicht dem naechsten passiert... -- Well, then let's give that Java-Wussie a beating... (me) Michael Lamertz | +49 2234 204947 / +49 171 6900 310 Sandstr. 122 | mike at lamertz.net 50226 Frechen | http://www.lamertz.net Germany | http://www.perl-ronin.de From Philip.Zembrod at web.de Fri Nov 11 07:45:14 2005 From: Philip.Zembrod at web.de (Philip Zembrod) Date: Fri, 11 Nov 2005 16:45:14 +0100 Subject: [Cologne-pm] Hallo zusammen Message-ID: <393948895@web.de> Michael Lamertz schrieb am 11.11.05 13:28:40: > > Siehst'e, geht doch! War das Anmelde-Dingens als SPAM markiert? Ja, und zwar als die schlimme Kategorie. Spam-Wahrscheinlichkeit > 75% laut web.de-Filter. > Wenn ja, haette ich gerne den Grund. Evtl. kann man dann durch die > Mailman-Config 'was drehen, damit sowas nicht dem naechsten passiert... Keine Ahnung. Ich werd vielleicht mal web.de anschreiben. Gru? Philip From pagaltzis at gmx.de Fri Nov 11 08:20:08 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Fri, 11 Nov 2005 17:20:08 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <20051111093008.GP4653@lamertz.net> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <31848.136.8.152.14.1131698324.squirrel@dergah> <20051111093008.GP4653@lamertz.net> Message-ID: <20051111162008.GA29499@klangraum> * Michael Lamertz [2005-11-11 10:35]: > Also, 'tar => 1,2,3' macht nix anderes, als Dir eine Liste > ('tar', 1, 2, 3) zu erzeugen. Ja, oder um es anders zu sagen, der `=>` ist nichts anderes als ein Komma, das es einem erspart, wenn man auf der linken Seite einen sehr einfach String hat, ihn in Anf?hrungszeichen zu setzen. (Der String darf nur Buchstaben, Ziffern und Unterstriche enthalten.) > Gibst Du also PROGRAM *ohne Komma* vor der Liste an, so ist > dies das Programm, dass gestartet werden soll, waehrend das > erste Element der Liste der Name ist, von dem das gestartete > Programm denkt, wie es heisst. (Was fuer ein scheiss Satz @-) Das wichtige hierbei ist, dass system @arguments; zweideutig ist, wenn @arguments nur ein Element enth?lt. Dann kann die Funktion n?mlich nicht unterscheiden, ob man sie als `system( $shellkommando )` aufgerufen hat (was die erw?hnten Shell-Metazeichen-Probleme birgt) oder als `system( @arguments )`. Der Aufruf der Form `system { $arguments[0] } @arguments` dagegen ist immer eindeutig, auch wenn @arguments nur ein Element enth?lt. Finde ich ehrlich gesagt nervt?tend umst?ndlich ? wo Perl es einem doch sonst immer so leicht macht, gleich die sichere Variante zu verwenden (zB `open` mit drei Argumenten). Aber damit muss man halt leben? > Btw.: Wusstet Ihr, dass $0 bei Perl von aussen anscheinend > nicht ueberschrieben werden kann? Jepp. Aus `perldoc perlvar`: On some (read: not all) operating systems assigning to $0 modifies the argument area that the "ps" program sees. On some platforms you may have to use special "ps" options or a different "ps" to see the changes. Modifying the $0 is more useful as a way of indicating the current program state than it is for hiding the program you're running. (Mnemonic: same as sh and ksh.) Note that there are platform specific limitations on the the maximum length of $0. In the most extreme case it may be limited to the space occupied by the original $0. In some platforms there may be arbitrary amount of padding, for example space characters, after the modified name as shown by "ps". In some platforms this padding may extend all the way to the original length of the argument area, no matter what you do (this is the case for example with Linux 2.2). Note for BSD users: setting $0 does not completely remove "perl" from the ps(1) output. For example, setting $0 to "foobar" may result in "perl: foobar (perl)" (whether both the "perl: " prefix and the " (perl)" suffix are shown depends on your exact BSD variant and version). This is an operating system feature, Perl cannot help it. M.a.W., das Ver?ndern von $0 ist extrem plattformspezifisch und daher keine besonders gute Angewohnheit. Gruss, -- #Aristoteles *AUTOLOAD=*_=sub{s/(.*)::(.*)/print$2,(",$\/"," ")[defined wantarray]/e;$1}; &Just->another->Perl->hacker; From pagaltzis at gmx.de Fri Nov 11 08:20:21 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Fri, 11 Nov 2005 17:20:21 +0100 Subject: [Cologne-pm] Hallo zusammen In-Reply-To: <393747331@web.de> References: <393747331@web.de> Message-ID: <20051111162021.GB29499@klangraum> Hallo Philip, * Philip Zembrod [2005-11-11 13:00]: > jetzt sollte es mit der Anmeldung geklappt haben. Da bin ich > also. willkommen in der Runde. :-) Hat Detlef es auch geschafft? Gruss, -- Aristoteles Pagaltzis // From mike at lamertz.net Fri Nov 11 12:04:28 2005 From: mike at lamertz.net (Michael Lamertz) Date: Fri, 11 Nov 2005 21:04:28 +0100 Subject: [Cologne-pm] script auf mehreren CPU's starten In-Reply-To: <20051111162008.GA29499@klangraum> References: <29583.136.8.152.14.1131619931.squirrel@dergah> <20051110183014.GN29499@klangraum> <31848.136.8.152.14.1131698324.squirrel@dergah> <20051111093008.GP4653@lamertz.net> <20051111162008.GA29499@klangraum> Message-ID: <20051111200428.GS4653@lamertz.net> Tsk, tsk, tsk, Aristoteles, hattest Du eine schlaflose Nacht, oder hast Du meinen Post einfach nicht gelesen? ;-) On Fri, Nov 11, 2005 at 05:20:08PM +0100, A. Pagaltzis wrote: > * Michael Lamertz [2005-11-11 10:35]: > > Also, 'tar => 1,2,3' macht nix anderes, als Dir eine Liste > > ('tar', 1, 2, 3) zu erzeugen. > > Ja, oder um es anders zu sagen, der `=>` ist nichts anderes als > ein Komma, das es einem erspart, wenn man auf der linken Seite > einen sehr einfach String hat, ihn in Anf?hrungszeichen zu > setzen. (Der String darf nur Buchstaben, Ziffern und Unterstriche > enthalten.) Das hatte ich exakt einen Absatz ueber der von Dir gequoteten Zeile auch beschrieben: $self wrote direkt darueber: > Erschreckt Dich der => Operator? > > ---------- perldoc perlop ---------- > The "=>" operator is a synonym for the comma, but forces any word > (consisting entirely of word charac- ters) to its left to be > interpreted as a string (as of 5.001). If the argument on the left > is not a word, it is first interpreted as an expression, and then > the string value of that is used. > ---------- perldoc perlop ---------- > > Btw.: Wusstet Ihr, dass $0 bei Perl von aussen anscheinend > > nicht ueberschrieben werden kann? > > Jepp. Aus `perldoc perlvar`: > > (docs snipped) > > M.a.W., das Ver?ndern von $0 ist extrem plattformspezifisch und > daher keine besonders gute Angewohnheit. Irrtum. Das bezieht sich auf die Veraenderung von $0 durch das laufende Script selber, wie es z.B. screen auch macht. Im ps wird dann naemlich SCREEN angezeigt. ---------- fake.pl ---------- #!/usr/bin/perl $0 = 'FAKED'; sleep 30; ---------- fake.pl ---------- und ---------- snip ---------- nijushiho:~$ ./fake.pl & [1] 4993 nijushiho:~$ ps -aef | grep 4993 mlamertz 4993 4948 0 20:47 pts/2 00:00:00 FAKED mlamertz 4995 4948 0 20:47 pts/2 00:00:00 grep 4993 nijushiho:~$ ---------- snip ---------- Das Vorgaukeln des falschen Namens von aussen ist durchaus nicht unueblich. Ein allseits bekanntes Beispiel ist z.B. gzip/gunzip: ---------- snip ---------- nijushiho:~$ ls -li /bin/gzip /bin/gunzip 3620878 -rwxr-xr-x 4 root root 53676 Jul 11 22:18 /bin/gunzip* 3620878 -rwxr-xr-x 4 root root 53676 Jul 11 22:18 /bin/gzip* nijushiho:~$ ---------- snip ---------- See you datt? Ist dasselbe Programm. Benutzt Du nun das 'call'-Script von meiner Mail heute Mittag, dann kannst Du damit aus gzip ganz einfach gunzip machen, und das Programm reagiert entsprechend auf die Aenderung: ---------- snip ---------- tweety:~$ ./call gzip gunzip --help gunzip 1.3.5 (2002-09-30) usage: gunzip [-cdfhlLnNrtvV19] [-S suffix] [file ...] -c --stdout write on standard output, keep original files unchanged -d --decompress decompress -f --force force overwrite of output file and compress links -h --help give this help -l --list list compressed file contents -L --license display software license -n --no-name do not save or restore the original name and time stamp -N --name save or restore the original name and time stamp -q --quiet suppress all warnings -r --recursive operate recursively on directories -S .suf --suffix .suf use suffix .suf on compressed files -t --test test compressed file integrity -v --verbose verbose mode -V --version display version number -1 --fast compress faster -9 --best compress better --rsyncable Make rsync-friendly archive file... files to (de)compress. If none given, use standard input. Report bugs to . tweety:~$ ---------- snip ---------- Und so wie's aussieht (nochmal, siehe Mail von vorhin), geht das bei Perl irgendwie nicht, da der Fake-Name eben nicht angezeigt wird. Ich hab's gerade bei 'nem Shell-Script ausprobiert, und da funktioniert's auch nicht. Haengt wohl damit zusammen, dass die #!-Zeile ja erst noch den Interpreter dazwischen schaltet. Wieder 'was gelernt... -- Well, then let's give that Java-Wussie a beating... (me) Michael Lamertz | +49 2234 204947 / +49 171 6900 310 Sandstr. 122 | mike at lamertz.net 50226 Frechen | http://www.lamertz.net Germany | http://www.perl-ronin.de From mike at lamertz.net Sun Nov 20 10:09:10 2005 From: mike at lamertz.net (Michael Lamertz) Date: Sun, 20 Nov 2005 19:09:10 +0100 Subject: [Cologne-pm] Website-Status... Message-ID: <20051120180910.GF2644@lamertz.net> Hi, wollte Euch nur auf dem Laufenden halten. Wir hatten ja zuvor auf der Liste, und auch beim letzten Treffen besprochen, dass wir die Gruppe vielleicht wieder ein bischen reanimiert bekommen. Ich habe die Build-Scripte fuer die Website ge4ufr43um0rt, nach subversion uebertragen und warte derzeit auf die aktuellen Zugangsdaten fuer den Server-Upload (Nach einem erfolgreichen Angriff im letzten Jahr wurde der Service umgezogen). later... -- Well, then let's give that Java-Wussie a beating... (me) Michael Lamertz | +49 2234 204947 / +49 171 6900 310 Sandstr. 122 | mike at lamertz.net 50226 Frechen | http://www.lamertz.net Germany | http://www.perl-ronin.de From pagaltzis at gmx.de Sun Nov 20 11:09:10 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Sun, 20 Nov 2005 20:09:10 +0100 Subject: [Cologne-pm] Website-Status... In-Reply-To: <20051120180910.GF2644@lamertz.net> References: <20051120180910.GF2644@lamertz.net> Message-ID: <20051120190910.GR29499@klangraum> Hi Mike, * Michael Lamertz [2005-11-20 19:15]: > wollte Euch nur auf dem Laufenden halten. danke. Gruss, -- #Aristoteles *AUTOLOAD=*_;sub _{s/(.*)::(.*)/print$2,(",$\/"," ")[defined wantarray]/e;$1}; &Just->another->Perl->hacker; From cem.sakaryali at easi.de Sun Nov 20 13:17:23 2005 From: cem.sakaryali at easi.de (Cem Sakaryali) Date: Sun, 20 Nov 2005 22:17:23 +0100 Subject: [Cologne-pm] backup script In-Reply-To: <20051120190910.GR29499@klangraum> References: <20051120180910.GF2644@lamertz.net> <20051120190910.GR29499@klangraum> Message-ID: <1132521444.4400.5.camel@dervish> mein backup script funktioniert sehr gut. Nochmal vielen dank an alle. Cem On Sun, 2005-11-20 at 20:09 +0100, A. Pagaltzis wrote: > Hi Mike, > > * Michael Lamertz [2005-11-20 19:15]: > > wollte Euch nur auf dem Laufenden halten. > > danke. > > Gruss, From pagaltzis at gmx.de Tue Nov 22 01:42:46 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Tue, 22 Nov 2005 10:42:46 +0100 Subject: [Cologne-pm] Closed mailing list archives Message-ID: <20051122094246.GB14735@klangraum> Hi all, I am a member of cologne.pm, where the action is currently a tad slow; so I was looking at the other German groups in an attempt to find ones which are more lively. Like ours, most of the websites are comatose (to put it politely); sometimes they?ve not been updated in five years. (Ours was last touched two years ago, though we?re working on that.) But I know from experience with our group that the mailing list is a much better indicator of the group?s health than the site usually is. So rather than looking at the sites at all, I went straight for the mailing list archives on all of them. And ran right into a wall in most cases. Almost everywhere, archives are viewable only by subscribers. Is that really necessary? I doubt that anything particularly private is being discussed; but the mailing lists are the only reliable gauge of a group?s activity level available to external observers. They?re also the only reliable criterion for how topical the group?s activities are. Putting them behind a registration wall amounts to a death knell if the group is already mostly-dormant. So here?s my request: please implore the user group leaders to make their archives publically viewable if at all conceivable. Regards, -- # Aristotle Pagaltzis // *AUTOLOAD=*_;sub _{s/(.*)::(.*)/print$2,(",$\/"," ")[defined wantarray]/e;$1}; &Just->another->Perl->hacker; From user_groups at pm.org Wed Nov 23 05:45:41 2005 From: user_groups at pm.org (Dave Cross) Date: Wed, 23 Nov 2005 13:45:41 +0000 Subject: [Cologne-pm] Closed mailing list archives In-Reply-To: <20051122094246.GB14735@klangraum> References: <20051122094246.GB14735@klangraum> Message-ID: <43847285.6070809@pm.org> A. Pagaltzis wrote: > So here?s my request: please implore the user group leaders to > make their archives publically viewable if at all conceivable. Well, it's up to the individual groups to decide whether or not they make their mailing list archives public. I know that some people have very strong objections to that kind of thing. But I'll suggest it to them. Dave... From cem.sakaryali at easi.de Sun Nov 27 15:56:56 2005 From: cem.sakaryali at easi.de (Cem Sakaryali) Date: Mon, 28 Nov 2005 00:56:56 +0100 Subject: [Cologne-pm] finde aritmatik operator fuer 57a27b37c17d47=777 In-Reply-To: <20051122094246.GB14735@klangraum> References: <20051122094246.GB14735@klangraum> Message-ID: <1133135816.20647.23.camel@dervish> @a=@b=@c=@d=('*','-','+','/'); foreach $a (@a) { foreach $b (@b) { foreach $c (@c) { foreach $d (@d) { $string = eval ("57 $a 27 $b 37 $c 17 $d 47"); if ($string==777) {print "a$a b$b c$c d$d\n"} } } } } Ich mag perl :D Gruss Cem From pagaltzis at gmx.de Sun Nov 27 17:15:56 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Mon, 28 Nov 2005 02:15:56 +0100 Subject: [Cologne-pm] finde aritmatik operator fuer 57a27b37c17d47=777 In-Reply-To: <1133135816.20647.23.camel@dervish> References: <1133135816.20647.23.camel@dervish> Message-ID: <20051128011556.GE30755@klangraum> * Cem Sakaryali [2005-11-28 01:00]: > @a=@b=@c=@d=('*','-','+','/'); > > foreach $a (@a) { > foreach $b (@b) { > foreach $c (@c) { > foreach $d (@d) { > $string = eval ("57 $a 27 $b 37 $c 17 $d 47"); > if ($string==777) {print "a$a b$b c$c d$d\n"} > } > } > } > } > > > Ich mag perl :D H?bsch! :-) Aber warum vier Arrays? :-) Ausserdem w?rde ich die Bedingung gleich in den Ausdruck mit reinschreiben. Dann kannst du den ganzen Ausdruck inkl. Ergebnis an einer einzigen Stelle ummodeln. Dann w?rde ich das eval() auch gleich in die if-Bedingung verschieben und den erfolgreichen Ausdruck als solchen ausgeben. Das ergibt zusammen: my @ops = qw( * - + / ); for my $i ( @ops ) { for my $j ( @ops ) { for my $k ( @ops ) { for my $l ( @ops ) { my $expr = "777 == 57 $i 27 $j 37 $k 17 $l 47"; print $expr, "\n" if eval $expr; } } } } ($a und $b solltest du ?brigens generell meiden, weil das die Spezialvariablen sind, die sort() verwendet.) Das kannst du dann sch?n in ein bisschen Zauberei mit sprintf und Set::CrossProduct umschreiben: use Set::CrossProduct; my @ops = qw( * + - / ); my $expr = '777 == 57 %s 27 %s 37 %s 17 %s 47'; my $xp = Set::CrossProduct->new( [ map \@ops, $expr =~ /%s/g ] ); while( my @attempt = $xp->get ) { my $attempt = sprintf $expr, @attempt; print $attempt, "\n" if eval $attempt; } Die Schachtelungstiefe ergibt sich hier implizit aus der Anzahl der %s-Platzhalter im Ausdruck. Gruss, -- #Aristoteles *AUTOLOAD=*_;sub _{s/(.*)::(.*)/print$2,(",$\/"," ")[defined wantarray]/e;$1}; &Just->another->Perl->hacker; From mike at lamertz.net Wed Nov 30 15:00:04 2005 From: mike at lamertz.net (Michael Lamertz) Date: Wed, 30 Nov 2005 23:00:04 UT Subject: [Cologne-pm] Treffen am 14.12.2005... Message-ID: <20051130230004.5E6AE1C8174@tweety> Yo! Das n?chste Treffen findet wie gewohnt statt am 2. Mittwoch des Monats, also am 14.12.2005, in der Sansibar Trierer Str. 41 50674 K?ln ab ca. 18:30 Dies ist eine automatisch erzeugte Nachricht. Sollte mittlerweile auf der Liste ein anderer Termin verabredet worden sein, so ist diese Mail hinf?llig. From Philip.Zembrod at web.de Thu Dec 1 00:27:45 2005 From: Philip.Zembrod at web.de (Philip Zembrod) Date: Thu, 01 Dec 2005 09:27:45 +0100 Subject: [Cologne-pm] Treffen am 14.12.2005... Message-ID: <412862183@web.de> Michael Lamertz schrieb am 01.12.05 00:00:47: > > Yo! > > Das n?chste Treffen findet wie gewohnt statt am 2. Mittwoch des Monats, also am > 14.12.2005, in der Moin zusammen, ich kann diesmal leider nicht. Gru? Philip From mike at lamertz.net Thu Dec 1 00:44:04 2005 From: mike at lamertz.net (Michael Lamertz) Date: Thu, 1 Dec 2005 09:44:04 +0100 Subject: [Cologne-pm] Treffen am 14.12.2005... In-Reply-To: <412862183@web.de> References: <412862183@web.de> Message-ID: <20051201084404.GA19832@lamertz.net> Hey, On Thu, Dec 01, 2005 at 09:27:45AM +0100, Philip Zembrod wrote: > > > Das n?chste Treffen findet wie gewohnt statt am 2. Mittwoch des Monats, also am > > 14.12.2005, in der > > Moin zusammen, > > ich kann diesmal leider nicht. Schade. Ich werde kommen. Wer noch? -- Well, then let's give that Java-Wussie a beating... (me) Michael Lamertz | +49 2234 204947 / +49 171 6900 310 Sandstr. 122 | mike at lamertz.net 50226 Frechen | http://www.lamertz.net Germany | http://www.perl-ronin.de From Susan.Dittmar at gmx.de Thu Dec 1 01:21:53 2005 From: Susan.Dittmar at gmx.de (Susan Dittmar) Date: Thu, 1 Dec 2005 10:21:53 +0100 Subject: [Cologne-pm] Treffen am 14.12.2005... In-Reply-To: <20051201084404.GA19832@lamertz.net> References: <412862183@web.de> <20051201084404.GA19832@lamertz.net> Message-ID: <20051201092153.GB6502@eureca.de> > Ich werde kommen. Wer noch? Ich habs vor. Gru?, Susan From cem.sakaryali at easi.de Thu Dec 1 01:23:05 2005 From: cem.sakaryali at easi.de (Cem Sakaryali) Date: Thu, 1 Dec 2005 10:23:05 +0100 (Westeuropäische Normalzeit) Subject: [Cologne-pm] Treffen am 14.12.2005... In-Reply-To: <20051201084404.GA19832@lamertz.net> References: <412862183@web.de> <20051201084404.GA19832@lamertz.net> Message-ID: <55871.136.8.152.14.1133428985.squirrel@dergah> Hallo, ich werde auch versuchen zu kommen. Gruss Cem On Thu, December 1, 2005 09:44, Michael Lamertz wrote: > Hey, > > On Thu, Dec 01, 2005 at 09:27:45AM +0100, Philip Zembrod wrote: >> >> > Das n?chste Treffen findet wie gewohnt statt am 2. Mittwoch des >> Monats, also am >> > 14.12.2005, in der >> >> Moin zusammen, >> >> ich kann diesmal leider nicht. > > Schade. > > Ich werde kommen. Wer noch? > > -- > Well, then let's give that Java-Wussie a beating... (me) > > Michael Lamertz | +49 2234 204947 / +49 171 > 6900 310 > Sandstr. 122 | > mike at lamertz..net > 50226 Frechen | > http://www.lamertz..net > Germany | > http://www.perl-ronin.de > _______________________________________________ > Cologne-pm mailing list > Cologne-pm at pm.org > http://mail.pm.org/mailman/listinfo/cologne-pm > From towo at sozial-herausgefordert.de Thu Dec 1 06:15:44 2005 From: towo at sozial-herausgefordert.de (Tobias Wolter) Date: Thu, 1 Dec 2005 15:15:44 +0100 Subject: [Cologne-pm] Treffen am 14.12.2005... In-Reply-To: <20051201084404.GA19832@lamertz.net> References: <412862183@web.de> <20051201084404.GA19832@lamertz.net> Message-ID: <20051201141544.GA28495@home.ydal.de> On 2005-12-01T09:44:04+0100 (Thursday), Michael Lamertz wrote: > Ich werde kommen. Wer noch? Kann ja mal gucken, ob ich da Zeit hab'. -- Gegen Softwarepatente in Europa: http://swpat.ffii.org./ Mister Teatime had a truly brilliant mind, but it was brilliant like a frac- tured mirror, all marvellous facets and rainbows but, ultimately, also some- thing that was broken. (Terry Pratchett in `Hogfather') -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://mail.pm.org/pipermail/cologne-pm/attachments/20051201/799d30df/attachment.bin From pagaltzis at gmx.de Thu Dec 1 13:51:18 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Thu, 1 Dec 2005 22:51:18 +0100 Subject: [Cologne-pm] Treffen am 14.12.2005... In-Reply-To: <20051201084404.GA19832@lamertz.net> References: <412862183@web.de> <20051201084404.GA19832@lamertz.net> Message-ID: <20051201215118.GC2824@klangraum> * Michael Lamertz [2005-12-01 09:50]: > Ich werde kommen. Wer noch? Bin dabei. Gruss, -- Aristoteles ?Wer nicht ?ber sich selbst lachen kann, nimmt das Leben nicht ernst genug.? From pagaltzis at gmx.de Sat Dec 3 21:09:38 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Sun, 4 Dec 2005 06:09:38 +0100 Subject: [Cologne-pm] Mehr Leben in die Bude? Message-ID: <20051204050938.GR2824@klangraum> Hallo z?amm, was haltet ihr von diesem Vorschlag? : > I think, some Perlmonger-groups should do some kind of > "Marketing". I think Dresden.pm makes a good job. They provide > a Perl-Talk (Tutorial) at the Linux-Day in Dresden, so they are > in the public's mind. > > Frankfurt.pm is currently growing. I think this is a result of > the activies. Not in "Marketing" like the Dresden.pm does, but > the members are very active at the base: One of them is the > webmaster of Perl-Community.de, that provides a Wiki (FAQ, > Perldoc (some in german) and some snippets), a Forum and lots > more. Some of Frankfurt.pm are moderating the Forum on > Perl-Community.de and on http://openbc.com/ > > Cologne.pm may should use some websites (e.g. > perl-community.de, openbc.com) to announce meetings and talks. Dass die Dresdener ein Tutorium am Linux-Tag veranstalten ist ja garkeine schlechte Idee ? die Cologne Perl-Users sind ja mehr oder weniger durch meine Pr?senz auf der Liste des Linux-Workshop K?ln entstanden, wir haben also einen klaren Beweis, dass das auch lokal bei uns wirkt. Und unsere Treffen in den deutschen Perl-Foren anzuk?ndigen ist ja ebenfalls keine schlechte Idee. Talks, naja? :-) Gruss, -- Aristoteles ?Wer nicht ?ber sich selbst lachen kann, nimmt das Leben nicht ernst genug.? From mike at lamertz.net Mon Dec 5 02:38:25 2005 From: mike at lamertz.net (Michael Lamertz) Date: Mon, 5 Dec 2005 11:38:25 +0100 Subject: [Cologne-pm] (fwd) Newsletter from O'Reilly UG Program, December 2 {Scanned} Message-ID: <20051205103825.GB29769@lamertz.net> ----- Forwarded message from Marsee Henon ----- ================================================================ O'Reilly News for User Group Members December 2, 2005 ================================================================ ---------------------------------------------------------------- Book News ---------------------------------------------------------------- -Programming MapPoint in .NET -Monad -DV Filmmaking: From Start to Finish -Makers -Wireless Hacks, Second Edition -Quicken 2006 for Starters: The Missing Manual -Time Management for System Administrators -Java Enterprise in a Nutshell, Third Edition -Designing Interfaces -Photoshop Elements 4 One-on-One -Applied Software Project Management -Practical Perforce -Understanding the Linux Kernel, Third Edition -Wicked Cool Java -Linux Multimedia Hacks ---------------------------------------------------------------- Upcoming Events ---------------------------------------------------------------- -O'Reilly at LISA 2005, San Diego, CA--December 4-9 -O'Reilly at ApacheCon 2005, San Diego, CA--December 10-14 -O'Reilly at Macworld 2006, San Francisco, CA--January 9-13 ---------------------------------------------------------------- Conference News ---------------------------------------------------------------- -ETel Registration Now Open ---------------------------------------------------------------- News ---------------------------------------------------------------- -New O'Reily Newsletter Topics Available -UFOs (Ubiquitous Findable Objects) -User Group Members receive a special 50% discount on Learning Lab Courses--Ends December 31 -What Is Prefactoring? -Avoid Common Pitfalls in Greasemonkey -PHP Problems -TCP Tuning and Network Troubleshooting -Getting Video Out of Your New iPod--for Cheap! -An Introduction to Tiger Terminal, Part 5 -What Is Spyware? -Visual Studio Express 2005: Now Available -Creating an Application from Scratch, Part 1 -Toughen Forms' Security with an Image -To Pop or Not To Pop -Ruby the Rival -Hibernate for Java SE -What Is Screencasting -Inside a Luxury Synth: Creating the Linux-Powered Korg OASYS -MAKE's Mostly Under $100 Gift Guide 2005 -MAKE on "Attack of the Show" -Introducing the iPod VR ---------------------------------------------------------------- >From Your Peers ---------------------------------------------------------------- Linuxfest Northwest 2006 Looking for Speakers--Bellingham, WA ================================================ Book News ================================================ Did you know you can request a free book to review for your group? Ask your group leader for more information. For book review writing tips and suggestions, go to: Don't forget, you can receive 30% off any O'Reilly, No Starch, Paraglyph, PC Publishing, Pragmatic Bookshelf, SitePoint, or Syngress book you purchase directly from O'Reilly. Just use code DSUG when ordering online or by phone 800-998-9938. ***Free ground shipping is available for online orders of at least $29.95 that go to a single address. This offer applies to US delivery addresses in the 50 states and Puerto Rico. For more details, go to: ---------------------------------------------------------------- New Releases ---------------------------------------------------------------- ***Programming MapPoint in .NET Publisher: O'Reilly ISBN: 0596009062 This comprehensive guide shows you how to use MapPoint's interactive mapping abilities to improve your company's bottom line. Learn how to build custom applications for the desktop, web, and mobile devices. Perfect for anyone who wants to render maps, calculate routes, obtain real-time location information, and analyze map data. Chapter 6, "MapPoint Web Service Find APIs," is available online: ***Monad Publisher: O'Reilly ISBN: 0596100094 This compact guide offers an exciting tour of the opportunities presented by Monad, the powerful new command shell from Microsoft. Improve productivity by learning how to automate a wide range of existing administrative tasks. Featuring a host of real-world examples, it's the perfect resource for developers, administrators, and power users alike. ***DV Filmmaking: From Start to Finish Publisher: O'Reilly ISBN: 0-596-00848-1 Written in an engaging, accessible style, "DV Filmmaking" provides a solid foundation of tremendous value to a beginner, while addressing the fine points of filmmaking with a level of sophistication, detail, and insight that even the most worldly director or educator can appreciate. The author draws upon his years of experience teaching at the college and graduate level, his extensive professional background as a media producer, and his unmistakable love of cinema to create a text that's not only easy to learn from, but fun to read. Chapter 13, "Artistically Using Still Images," is available online: ***Makers Publisher: O'Reilly ISBN: 0596101880 Celebrating digital tinkering, hardware hacks, and D.I.Y. of all stripes, O'Reilly introduces "Makers," a beautiful hardbound book celebrating the creativity and resourcefulness of the D.I.Y. movement. Author Bob Parks profiles 100 people and their homebrew projects--people who make ingenious things in their backyards, basements and garages. Technologies old and new are used in service of the serious and the amusing, the practical and the outrageous as "Makers" explores both the inventions and the characters behind them in living color. ***Wireless Hacks, Second Edition Publisher: O'Reilly ISBN: 0596101449 Wireless technology gives us the flexibility, range and mobility to live, work, and think differently. It also opens up a vast range of tasty new hack possibilities, 100 of which are explored in the second edition of "Wireless Hacks," by Rob Flickenger and Roger Weeks. Completely revised and updated, "Wireless Hacks" includes over thirty brand-new hacks, major overhauls of over thirty more, and timely adjustments and touch-ups to dozens of others introduced in the first edition. Sample Hacks "Share Your GPS," "Monitor Wireless Links in Linux with Wavemon," and "Track Wireless Users" are available online: ***Quicken 2006 for Starters: The Missing Manual Publisher: O'Reilly ISBN: 0596101279 Quicken is one of today's most popular and convenient ways to keep track of personal finances, and "Quicken 2006 for Starters: The Missing Manual" is the refreshingly funny and sensible guide to using Quicken to simplify your finances and make the most of your money. It delivers clear explanations, step-by-step instructions, relevant advice, and plenty of real-world examples for putting Quicken to the best use. Chapter 2, "Accounts and Categories," is available online: ***Time Management for System Administrators Publisher: O'Reilly ISBN: 0596007833 This collection of time management tools addresses the very specific needs of embattled system administrators everywhere. Author Thomas Limoncelli shows you how to manage interruptions, eliminate timewasters, prioritize based on customer expectations, automate processes for faster execution, and much more. It's the first step to a more productive, happier you. Chapter 4, "The Cycle System," is available online: ***Java Enterprise in a Nutshell, Third Edition Publisher: O'Reilly ISBN: 0596101422 Revised and updated for the new 1.4 version of Sun Microsystems Java Enterprise Edition software, "Java Enterprise in a Nutshell, 3rd Edition" is a practical guide for Enterprise Java developers. Chapter 18, "JUnit and Cactus," is availavble online: ***Designing Interfaces Publisher: O'Reilly ISBN: 0596008031 This convenient resource offers advice on creating user-friendly interface designs--whether they're delivered on the Web, a CD, or a "smart" device like a cell phone. Solutions to common UI design problems are expressed as a collection of patterns--each one containing concrete examples, recommendations, and warnings. Intended for designers with basic UI design knowledge. Chapter 4, "Organizing the Page: Layout of Page Elements" is available online: ***Photoshop Elements 4 One-on-One Publisher: O'Reilly ISBN: 0596100981 Revised to cover all the new features of Photoshop Elements 4, this full-color book / high-definition video DVD package gives new users the accessible guidance they need to master this powerful but complex digital imaging program from the ground up, while still providing a wealth of tips, shortcuts, and secrets that even the most experienced Photoshop users won't know. ***Applied Software Project Management Publisher: O'Reilly ISBN: 0596009488 Whether you're starting a software project from scratch, or fixing an ailing one, this handy guide is your ticket to success. Written by a group of seasoned project managers, "Applied Software Project Management" provides essential project management tools, techniques, and practices-all designed to eliminate the frustrating cycle of releases and patches. Ideal for anyone on a project team. Chapter 3, "Estimation," is available online: ***Practical Perforce Publisher: O'Reilly ISBN: 0596101856 Authored by Perforce's own VP of product technology, "Practical Perforce" is the ideal complement to the existing product manual. The book is not only a helpful introduction to Perforce, it's an enlightening resource for those already familar with this versatile SCM product. Whether you're a programmer, product manager, or build engineer, you stand to benefit from the many insider tips and ideas presented in this convenient guide. Chapter 1, "Files in The Depot," and Chapter 7, "How Software Evolves," are available online: ***Understanding the Linux Kernel, Third Edition Publisher: O'Reilly ISBN: 0596005652 This new edition covers Version 2.6 of the Linux kernel, which has seen significant changes to nearly every kernel subsystem, particularly in the areas of memory management and block devices. "Understanding the Linux Kernel" provides a guided tour of the code that forms the core of all Linux operating systems. Beyond the functioning of the code, the book explains the theoretical underpinnings behind Linux, and many other operating systems. ***Wicked Cool Java Publisher: No Starch Press ISBN: 1593270615 Wicked Cool Java contains 101 fun, interesting, and useful ways to get more out of Java. This isn't intended as a Java tutorial--it's targeted at developers and system architects who have some basic Java knowledge but may not be familiar with the wide range of libraries available. Full of example code and ideas for combining them in useful projects, this book is perfect for hobbyists, while professionals will find tips and open-source projects to enhance their code and make their jobs easier. ***Linux Multimedia Hacks Publisher: O'Reilly ISBN: 0596100760 This Hacks book gives you the technical chops to enjoy the considerable multimedia options available on the Linux platform. Learn step-by-step how to do cool things with images, audio, and video. Included are tips and tricks for connecting to iPods, creating MP3s and Oggs, watching and making DVDs, turning your Linux box into a Tivo ala MythTV, and much more. ================================================ Upcoming Events ================================================ ***For more events, please see: http://events.oreilly.com/ ***O'Reilly at LISA 2005, San Diego, CA--December 4-9 Authors Eric Allman ("sendmail Desktop Reference" and "sendmail"), David N. Blank-Edelman ("Perl for System Administration"), Gerald Carter ("LDAP System Administration"), Tom Christiansen ("Perl Cookbook," and "Programming Perl"), AEleen Frisch ("Essential System Administration, 3rd Edition" and "Essential Windows NT System Administration"), Tom Limoncelli ("Time Management for System Administrators"), and W. Curtis Preston ("Using SANs and NAS" and "Unix Backup & Recovery") lead sessions at this sys admin confab. And don't miss the special evening with MAKE Magazine on Monday night! ***O'Reilly at ApacheCon 2005, San Diego, CA--December 10-14 Lots of O'Reilly authors are on this year's speaker roster: Rich Bowen and Ken Coar ("Apache Cookbook"), Brian Fitzpatrick ("Version Control with Subversion"), Rasmus Lerdorf ("Programming PHP" and "PHP Pocket Reference"), and Adam Trachtenberg ("Upgrading to PHP 5" and "PHP Cookbook"). ***O'Reilly at Macworld 2006, San Francisco, CA--January 9-13 Come to our booth to see our handsome and useful selection of Mac-related titles. Be sure to tune in to Macworld Live! hosted by author David Pogue ("Missing Manual Series"); David's guests include Nitrozac and Snaggy, authors of "The Best of the Joy of Tech." David will also be presenting a session on Tiger Secrets at Macworld. ================================================ Conference News ================================================ ***ETel Registration Now Open Emerging telephony networks enable a new generation of powerful communication applications, which threaten established business models--but more importantly, open up new opportunities and new markets. O'Reilly's Emerging Telephony Conference, January 24-26 in San Francisco, aims to articulate this revolution, provide a framework, and spark creative discussions among enterprise managers, developers, hackers, and sponsors interested in telephony. Join us as we explore this exciting new territory and investigate its implications. Receive 20% off the registration price when you use our special code Email marsee at oreilly.com for details. To register for the conference, go to: ================================================ News From O'Reilly & Beyond ================================================ --------------------- General News --------------------- ***New O'Reily Newsletters Topics Available- Now you can subscibe to "Digital Photography--Photoshop" in Product Annoucements, "Head First Series" Newsletters, or find out more about our new conferences. You can update your newsletter subscriptions here: ***UFOs (Ubiquitous Findable Objects) The emergence of ubiquitous findable objects (UFOs) enables us to tag and track products, possessions, pets, and people as they wander through space and time. In this fascinating read, bestselling author Peter Morville illustrates the power of the future presence of UFOs with real examples, such as Plazes, Meetro, Dodgeball, GPS, RFID, flocking patterns, anomaly detection, and more. Peter is the author of "Ambient Findability." ***User Group Members receive a special 50% discount on Learning Lab Courses--Ends December 31 As an O'Reilly User Group member, you save on all the courses in the following University of Illinois Certificate Series: -Linux/Unix System Administration -Web Programming -Open Source Programming -.NET Programming -Client-Side This offer ends December 31st, 2005. To redeem, use Promotion Code "ORALL1" to save 50%. Each course comes with a free O'Reilly book and a 7-day money-back guarantee. Register online: ***What Is Prefactoring? You've probably heard of Refactoring (the process of restructuring code without changing its external behavior), but what is Prefactoring? Ken Pugh provides the answer, then covers some of the guidelines to prefactoring in the areas of Extreme Abstraction, Extreme Separation, and Extreme Readability. Ken is the author of "Prefactoring." ***Avoid Common Pitfalls in Greasemonkey Mark Pilgrim walks through a major security concern that prompted the architectural changes in Greasemonkey 0.5, and then provides solutions to ten common pitfalls to avoid when writing Greasemonkey scripts. The hacks he describes, as well as the underlying history of the breach in Greasemonkey 0.3's security, provide a useful lesson on designing secure user scripts. Mark is the author of "Greasemonkey Hacks." --------------------- Open Source --------------------- ***PHP Problems Noel Davis looks at problems in PHP, Emacs, ftpd-ssl, Lynx, Roaring Penguin pppoe, OpenVPN, RAR, Fedora Core X-Chat, HP-UX xterm, libungif4, and GpsDrive. ***TCP Tuning and Network Troubleshooting Information doesn't travel across networks in one big chunk--it goes in little packets wrapped in packets wrapped in packets. Sure, you know that, but did you know that a bit of measuring and a bit of tweaking can improve your networking performance by two orders of magnitude? --------------------- Mac --------------------- ***Getting Video out of Your New iPod--for Cheap! Yes, you can spend extra dollars for Apple's sleek white video cable for TV connectivity, or you can hack your own together for cheap. ***An Introduction to Tiger Terminal, Part 5 In Part 5, Mary Norbury-Glaser looks at how Tiger Mac OS X runs regularly scheduled commands and scripts to execute recurring jobs, like system maintenance and backups. She compares the "old" way, using the Unix tool called cron (for chronological), with the new Tiger method of using the launched daemon. --------------------- Windows/.NET --------------------- ***What Is Spyware? As business use of the internet has grown up, so has business abuse. >From this incubator emerged spyware--the grownup cousin to viruses and worms, whose intent is not simply to have fun at someone else's expense but to make money at someone else's expense. Anton Chuvakin looks at what spyware is, how it works, and what you can do to keep your systems free of spyware infection. ***Visual Studio Express 2005: Now Available Microsoft's Visual Studio Express software is now available as a free download...Kevin Yank tells you why you should grab a copy to develop your ASP.NET 2.0 web sites. ***Creating an Application from Scratch, Part 1 Watch over Jesse Liberty's virtual shoulder as he documents his creation of a real-world application from scratch. In real time--that is, as he develops it. --------------------- Web --------------------- ***Toughen Forms' Security with an Image Keep your web site and server secure from "brute force attacks" by requiring visitors to type in a code embedded into an image. ***To Pop or Not To Pop If you run or own a content web site, should you be using pop-ups to monetize your traffic? Chris Beasley takes a look at the pros and cons of pop-up ad networks. --------------------- Java --------------------- ***Ruby the Rival Bruce Tate's Beyond Java picks Ruby as the front-runner among languages that could succeed Java among enterprise developers. But what's so great about Ruby--and frankly, what's wrong with Java? We asked some top Java bloggers, authors, and developers what they think of Ruby's challenge. ***Hibernate for Java SE For many, Hibernate goes hand in hand with Java EE as part of their enterprise development strategy. But what if you need access to your data access objects outside of the EE container? Jason Lee offers some strategy for getting and using a Hibernate session from Java SE code. --------------------- Digital Media --------------------- ***What Is Screencasting Whether it's for a tutorial, a how-to, or a software review, if you have a product you'd like to explain to other users, screencasting???the art of screen recording with audio narration???can be both easier and more effective than written descriptions accompanied by static screen shots. Jon Udell walks you through how to make, edit, and deliver compelling screencasts. ***Inside a Luxury Synth: Creating the Linux-Powered Korg OASYS Defying the trend toward ever-cheaper plastic gear and soulless soft synths, this super-keyboard is designed to rock the world for years to come. Create Digital Music's Peter Kirn goes behind the scenes at Korg USA to learn how the designers finally built the dream instrument they'd been planning for 15 years. --------------------- MAKE --------------------- ***MAKE's Mostly Under $100 Gift Guide 2005 MAKE proudly presents a gift guide for the holiday season with listings you certainly won't find anywhere else. MAKE staffers and pals sent in their favorite maker-friendly gift ideas for mostly under $100, as well as Editor Phillip Torrone's personal picks...happy holidays! May all of your warranties be voided! ***MAKE on "Attack of the Show" MAKE Editor Phil Torrone was on G4's "Attack of the Show" sharing the PEZ MP3 player, the "Fly" pen computer, and homemade high-speed flash photography. Here's a QuickTime of the segment: ***Introducing the iPod VR MAKE wanted to see if the new iPod video would foster a new market for virtual reality/LCD goggles. Here are the photos of the iPod video, homemade battery extender, travel case, and LCD goggles: ***Give the Gift of MAKE Magazine--Special Offer for UG Members Give the geek on your list a truly unique gift this holiday season-- their very own subscription to MAKE magazine. MAKE is the first magazine devoted to digital projects, hardware hacks, and DIY inspiration. Each issue brings the do-it-yourself mindset to all the technology in your life. You have a choice: Give a gift for $5 off the regular gift subscription rate--$29.95 (US), $34.95 (Canada), $44.95 (all other countries): Or place your gift order at the regular price $34.95 (US), $39.95 (Canada), $49.95 (all other countries)--and get a MAKE T-shirt free. ***Please note gift postcards and MAKE vol 4 will begin mailing on 12/9/05, orders received after 12/9/05 and non-US orders may not arrive in time for the holiday season. Your recipient(s) will receive the opportunity to add digital access to their subscription. All MAKE T-shirts will ship to your billing address. To order multiple orders for multiple countries, please contact customer service at 1-866-289-8847 (US & Canada), 1-818-487-2037 (all other countries) between the hours of 5am and 5pm Pacific time or Email: MAKE at espcomp.com ================================================ >From Your Peers ================================================ ***Linuxfest Northwest 2006 Looking for Speakers--Bellingham, WA Linuxfest Northwest 2006 (April 29, 2006), is looking for presentations on all aspects of Linux and open source technology. They welcome both introductory lectures and advanced discussions on software development, database, server application, networking, and system administration topics. They also invite those using Linux and open source applications to give talks about their experiences and lessons learned. Lecture slots are 90-minute with presenters speaking for 45 to 60 minutes followed by a question and answering period. For details see: ***Don't forget to check out the O'Reilly UG wiki to see what user groups around the globe are up to: Until next time-- Marsee Henon ================================================================ O'Reilly 1005 Gravenstein Highway North Sebastopol, CA 95472 http://ug.oreilly.com/ http://www.oreilly.com ================================================================ ----- End forwarded message ----- -- Well, then let's give that Java-Wussie a beating... (me) Michael Lamertz | +49 2234 204947 / +49 171 6900 310 Sandstr. 122 | mike at lamertz.net 50226 Frechen | http://www.lamertz.net Germany | http://www.perl-ronin.de From khkuth at freenet.de Mon Dec 5 03:41:33 2005 From: khkuth at freenet.de (Karl-Heinz Kuth) Date: Mon, 05 Dec 2005 12:41:33 +0100 Subject: [Cologne-pm] Umwandlung von DOC nach PDF Message-ID: <4394276D.6030504@freenet.de> Hallo, ich habe folgendes Problem: Ich m?chte ohne weiteren Eingriff (automatisiert), ein Worddokument bearbeiten, dieses bearbeitete Worddokument in eine PDF-Datei umwandeln und dieses dann per Mail versenden. Die Schritte Worddokument bearbeiten und per E-Mail verschicken sind schon erledigt. Ich wei? nur noch nicht, wie ich ein Worddokument automatisiert in ein PDF Dokument umwandeln kann. Die Umwandlungsgeschwindigkeit ist egal, das kann auch etwas l?nger dauern, da es sich nur um ein kleines Dokument handelt. Die Qualit?t des erzeugten Dokumentes ist nur wichtig. Hat jemand irgendwelche Ideen, wie man das in Perl realisieren kann? Die Bearbeitung des Worddokumentes ist relativ trivial, von daher w?re eine Konvertierung in ein anderes Format theoretisch kein Problem. Die ?nderung in einer ASCII-Datei w?re per "simplen" regul?ren Ausdruck m?glich. Daher habe ich es auch schon mal versucht, nach Open Office (1.1.4) zu konvertieren, da gibt es aber ein Problem, die Formatvorlagen werden nicht korrekt konvertiert. Die automatische Ausgabe nach PDF habe ich dort auch nicht hinbekommen. Gru? Karl-Heinz From pagaltzis at gmx.de Mon Dec 5 03:53:21 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Mon, 5 Dec 2005 12:53:21 +0100 Subject: [Cologne-pm] Umwandlung von DOC nach PDF In-Reply-To: <4394276D.6030504@freenet.de> References: <4394276D.6030504@freenet.de> Message-ID: <20051205115321.GB2824@klangraum> * Karl-Heinz Kuth [2005-12-05 12:45]: > Hat jemand irgendwelche Ideen, wie man das in Perl realisieren kann? system( 'antiword', -a => 'a4', $worddoc ); :-) Siehe . Gruss, -- #Aristoteles *AUTOLOAD=*_;sub _{s/(.*)::(.*)/print$2,(",$\/"," ")[defined wantarray]/e;$1}; &Just->another->Perl->hacker; From pagaltzis at gmx.de Mon Dec 5 04:19:16 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Mon, 5 Dec 2005 13:19:16 +0100 Subject: [Cologne-pm] Umwandlung von DOC nach PDF In-Reply-To: <43942CA9.3000408@freenet.de> References: <4394276D.6030504@freenet.de> <20051205115321.GB2824@klangraum> <43942CA9.3000408@freenet.de> Message-ID: <20051205121916.GC2824@klangraum> * Karl-Heinz Kuth [2005-12-05 13:05]: > wenn ich das richtig verstehe, kann ich hiermit das Dokument > ins PS-Format umwandeln. Soweit so sch?n, aber damit bin ich > noch nicht in meinem Zielformat PDF. Das w?re ?-p?. Mit dem ?-a?-Schalter erzeugt antiword PDF. Schlimmstenfalls muss es eben noch ps2pdf aus dem Ghostscript-Paket sein. Gruss, -- Aristoteles Pagaltzis // From khkuth at freenet.de Tue Dec 6 04:46:45 2005 From: khkuth at freenet.de (Karl-Heinz Kuth) Date: Tue, 06 Dec 2005 13:46:45 +0100 Subject: [Cologne-pm] Umwandlung von DOC nach PDF In-Reply-To: <20051205121916.GC2824@klangraum> References: <4394276D.6030504@freenet.de> <20051205115321.GB2824@klangraum> <43942CA9.3000408@freenet.de> <20051205121916.GC2824@klangraum> Message-ID: <43958835.400@freenet.de> Hallo, > * Karl-Heinz Kuth [2005-12-05 13:05]: > >>wenn ich das richtig verstehe, kann ich hiermit das Dokument >>ins PS-Format umwandeln. Soweit so sch?n, aber damit bin ich >>noch nicht in meinem Zielformat PDF. > > > Das w?re ?-p?. Mit dem ?-a?-Schalter erzeugt antiword PDF. > > Schlimmstenfalls muss es eben noch ps2pdf aus dem > Ghostscript-Paket sein. danke f?r den Tipp, ich habe es mal ausprobiert. Aber die Qualit?t der erzeugten PDF-Datei ist unbrauchbar. Die Formatierungen des Worddokumentes werden mehr oder weniger ignoriert. Gru? Karl-Heinz From cem.sakaryali at easi.de Tue Dec 6 05:01:27 2005 From: cem.sakaryali at easi.de (Cem Sakaryali) Date: Tue, 6 Dec 2005 14:01:27 +0100 (Westeuropäische Normalzeit) Subject: [Cologne-pm] Umwandlung von DOC nach PDF In-Reply-To: <43958835.400@freenet.de> References: <4394276D.6030504@freenet.de> <20051205115321.GB2824@klangraum> <43942CA9.3000408@freenet.de> <20051205121916.GC2824@klangraum> <43958835.400@freenet.de> Message-ID: <10941.136.8.152.14.1133874087.squirrel@dergah> Hallo, wuerde Dir pd2pdf helfen? Also erst in ps umwandeln (wenn dort die Qualitaet ok ist netuerlich) dann mit ps2pdf es in pdf Umwandeln. Gruss Cem On Tue, December 6, 2005 13:46, Karl-Heinz Kuth wrote: > Hallo, > >> * Karl-Heinz Kuth [2005-12-05 13:05]: >> >>>wenn ich das richtig verstehe, kann ich hiermit das Dokument >>>ins PS-Format umwandeln. Soweit so sch??n, aber damit bin ich >>>noch nicht in meinem Zielformat PDF. >> >> >> Das w??re ??-p??. Mit dem ??-a??-Schalter erzeugt antiword PDF. >> >> Schlimmstenfalls muss es eben noch ps2pdf aus dem >> Ghostscript-Paket sein. > > danke f??r den Tipp, ich habe es mal ausprobiert. Aber die Qualit??t der > erzeugten PDF-Datei ist unbrauchbar. Die Formatierungen des > Worddokumentes werden mehr oder weniger ignoriert. > > Gru?? > Karl-Heinz > > _______________________________________________ > Cologne-pm mailing list > Cologne-pm at pm.org > http://mail.pm.org/mailman/listinfo/cologne-pm From pagaltzis at gmx.de Tue Dec 6 05:04:29 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Tue, 6 Dec 2005 14:04:29 +0100 Subject: [Cologne-pm] Umwandlung von DOC nach PDF In-Reply-To: <43958835.400@freenet.de> References: <4394276D.6030504@freenet.de> <20051205115321.GB2824@klangraum> <43942CA9.3000408@freenet.de> <20051205121916.GC2824@klangraum> <43958835.400@freenet.de> Message-ID: <20051206130429.GG2824@klangraum> * Karl-Heinz Kuth [2005-12-06 13:50]: > Aber die Qualit?t der > erzeugten PDF-Datei ist unbrauchbar. Die Formatierungen des > Worddokumentes werden mehr oder weniger ignoriert. Dann tut es vielleicht was aus dem wv-Paket? http://wvware.sourceforge.net/ Gruss, -- Aristoteles Pagaltzis // From gustav.vella at gmail.com Tue Dec 6 05:24:51 2005 From: gustav.vella at gmail.com (Gustav Vella) Date: Tue, 6 Dec 2005 14:24:51 +0100 Subject: [Cologne-pm] Umwandlung von DOC nach PDF In-Reply-To: <4394276D.6030504@freenet.de> References: <4394276D.6030504@freenet.de> Message-ID: Hallo Karl-Heinz, On 12/5/05, Karl-Heinz Kuth wrote: > Daher habe ich es auch schon mal versucht, nach Open Office > (1.1.4) zu konvertieren, da gibt es aber ein Problem, die Formatvorlagen > werden nicht korrekt konvertiert. Die automatische Ausgabe nach PDF habe > ich dort auch nicht hinbekommen. Warum benutzt du 1.1.4 - hast du es mit 2.0 ausprobiert? Seitdem wurden mehrere konvertierungsprobleme behoben. Es ist auch m?glich den Konverter separat auf ein Server zu installieren, und in ein prozess einzubinden. Gr??e, Gustav From jens.gassmann at atomix.de Tue Dec 6 05:32:07 2005 From: jens.gassmann at atomix.de (Jens Gassmann) Date: Tue, 06 Dec 2005 14:32:07 +0100 Subject: [Cologne-pm] Umwandlung von DOC nach PDF In-Reply-To: References: <4394276D.6030504@freenet.de> Message-ID: <439592D7.1050207@atomix.de> Hallo Gustav, > Es ist auch m?glich den > Konverter separat auf ein Server zu installieren, und in ein prozess > einzubinden. das h?rt sich interessant an - wo kann ich dar?ber mehr erfahren? L?uft das nur unter Windows oder auch unter Linux? Beste Gr??e Jens -- "Programming is like sex, one mistake and you have to support it for the rest of your life." Michael Sinz EMail: jens.gassmann at atomix.de B?ro : 0221/975 08 20 http://www.atomix.de <- Photoblog http://www.aisware.de <- Content-Management-L?sung From khkuth at freenet.de Tue Dec 6 05:41:24 2005 From: khkuth at freenet.de (Karl-Heinz Kuth) Date: Tue, 06 Dec 2005 14:41:24 +0100 Subject: [Cologne-pm] Umwandlung von DOC nach PDF In-Reply-To: References: <4394276D.6030504@freenet.de> Message-ID: <43959504.6090605@freenet.de> Hallo Gustav, >>Daher habe ich es auch schon mal versucht, nach Open Office >>(1.1.4) zu konvertieren, da gibt es aber ein Problem, die Formatvorlagen >>werden nicht korrekt konvertiert. Die automatische Ausgabe nach PDF habe >>ich dort auch nicht hinbekommen. > > > Warum benutzt du 1.1.4 - hast du es mit 2.0 ausprobiert? Seitdem > wurden mehrere konvertierungsprobleme behoben. Es ist auch m?glich den > Konverter separat auf ein Server zu installieren, und in ein prozess > einzubinden. Ich hatte noch keine Zeit die Version 2.0 runterzuladen. Ist mir auch noch zu neu, da muss man dann sowieso alle paar Tage nach Updates schauen. Da warte ich lieber ein paar Patches ab und installiere es dann. Trotzdem Danke f?r den Hinweis. Werde ich ausprobieren, wenn die anderen Vorschl?ge nicht funktionieren. Gru? Karl-Heinz From mike at lamertz.net Tue Dec 6 15:00:07 2005 From: mike at lamertz.net (Michael Lamertz) Date: Tue, 6 Dec 2005 23:00:07 UT Subject: [Cologne-pm] Treffen am 14.12.2005... {Scanned} Message-ID: <20051206230007.B797B16F4011@tweety> Yo! Das n?chste Treffen findet wie gewohnt statt am 2. Mittwoch des Monats, also am 14.12.2005, in der Sansibar Trierer Str. 41 50674 K?ln ab ca. 18:30 Dies ist eine automatisch erzeugte Nachricht. Sollte mittlerweile auf der Liste ein anderer Termin verabredet worden sein, so ist diese Mail hinf?llig. From Susan.Dittmar at gmx.de Wed Dec 7 02:22:02 2005 From: Susan.Dittmar at gmx.de (Susan Dittmar) Date: Wed, 7 Dec 2005 11:22:02 +0100 Subject: [Cologne-pm] Treffen am 14.12.2005... In-Reply-To: <20051201092153.GB6502@eureca.de> References: <412862183@web.de> <20051201084404.GA19832@lamertz.net> <20051201092153.GB6502@eureca.de> Message-ID: <20051207102202.GA16223@eureca.de> Hallo Ihr, > > Ich werde kommen. Wer noch? Ich kann leider doch nicht erscheinen. Diesmal sind jedoch nicht Probleme der Grund, sondern Erfreuliches :-) Bis hoffentlich bald, Susan From cem.sakaryali at easi.de Mon Dec 12 12:24:19 2005 From: cem.sakaryali at easi.de (Cem Sakaryali) Date: Mon, 12 Dec 2005 21:24:19 +0100 Subject: [Cologne-pm] Treffen am 14.12.2005... {Scanned} In-Reply-To: <20051206230007.B797B16F4011@tweety> References: <20051206230007.B797B16F4011@tweety> Message-ID: <1134419060.2523.1.camel@dervish> Hallo, ich werde leider nicht kommen. Wuensche euch viel spass. Gruss Cem On Tue, 2005-12-06 at 23:00 +0000, Michael Lamertz wrote: > Yo! > > Das n?chste Treffen findet wie gewohnt statt am 2. Mittwoch des Monats, also am > 14.12.2005, in der > > Sansibar > Trierer Str. 41 > 50674 K?ln > ab ca. 18:30 > > Dies ist eine automatisch erzeugte Nachricht. Sollte mittlerweile auf der > Liste ein anderer Termin verabredet worden sein, so ist diese Mail hinf?llig. > > _______________________________________________ > Cologne-pm mailing list > Cologne-pm at pm.org > http://mail.pm.org/mailman/listinfo/cologne-pm From pagaltzis at gmx.de Mon Dec 12 12:38:31 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Mon, 12 Dec 2005 21:38:31 +0100 Subject: [Cologne-pm] Treffen am 14.12.2005... {Scanned} In-Reply-To: <20051206230007.B797B16F4011@tweety> References: <20051206230007.B797B16F4011@tweety> Message-ID: <20051212203831.GI2824@klangraum> * Michael Lamertz [2005-12-07 00:05]: > Das n?chste Treffen findet wie gewohnt statt am 2. Mittwoch des > Monats, also am 14.12.2005 Wer kommt also jetzt, ausser mir und Mike? PS.: Mike, du musst deine MTA-Config immer noch debuggen, der ?{Scanned}?-Modder wird immer noch in die Subjects ausgehender Mail geschrieben. Gruss, -- Aristoteles Pagaltzis // From towo at sozial-herausgefordert.de Tue Dec 13 01:44:32 2005 From: towo at sozial-herausgefordert.de (Tobias Wolter) Date: Tue, 13 Dec 2005 10:44:32 +0100 Subject: [Cologne-pm] Treffen am 14.12.2005... {Scanned} In-Reply-To: <20051212203831.GI2824@klangraum> References: <20051206230007.B797B16F4011@tweety> <20051212203831.GI2824@klangraum> Message-ID: <20051213094432.GA24154@home.ydal.de> On 2005-12-12T21:38:31+0100 (Monday), A. Pagaltzis wrote: > * Michael Lamertz [2005-12-07 00:05]: > > Das n?chste Treffen findet wie gewohnt statt am 2. Mittwoch des > > Monats, also am 14.12.2005 > Wer kommt also jetzt, ausser mir und Mike? Moi. -- Gegen Softwarepatente in Europa: http://swpat.ffii.org./ Mister Teatime had a truly brilliant mind, but it was brilliant like a frac- tured mirror, all marvellous facets and rainbows but, ultimately, also some- thing that was broken. (Terry Pratchett in `Hogfather') -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://mail.pm.org/pipermail/cologne-pm/attachments/20051213/48acc13a/attachment.bin From khkuth at freenet.de Tue Dec 13 05:32:56 2005 From: khkuth at freenet.de (Karl-Heinz Kuth) Date: Tue, 13 Dec 2005 14:32:56 +0100 Subject: [Cologne-pm] Umwandlung von DOC nach PDF In-Reply-To: <43959504.6090605@freenet.de> References: <4394276D.6030504@freenet.de> <43959504.6090605@freenet.de> Message-ID: <439ECD88.7020507@freenet.de> Hallo, ich habe eine L?sung gefunden. Hier ist sie (wen es interessiert). Sie ist vielleicht nicht die optimalste ist, aber sie funktioniert f?r mich. Ich habe mir das Tool FreePDF XP von http://shbox.de heruntergeladen. Weiterhin ben?tigt man Ghostscript. Jetzt kann man sich im Programm diverse Duckertrieber konfigurieren (erstellen), mit denen man beliebige Dokumente in beliebigen Qualit?ten umwandeln kann. Dabei kann noch einen Pfad angeben, wo man ein Dokument automatisch abspeichern kann. Jetzt kann man in Word einfach ein Makro aufrufen mit dem man einfach das Dokument mit diesem Druckertreiber ausdruckt und das war's. Viele Gr??e Karl-Heinz From khkuth at freenet.de Tue Dec 13 05:46:30 2005 From: khkuth at freenet.de (Karl-Heinz Kuth) Date: Tue, 13 Dec 2005 14:46:30 +0100 Subject: [Cologne-pm] Fehler beim Versenden einer E-Mail Message-ID: <439ED0B6.4040604@freenet.de> Hallo, ich habe ein neues Problem und wei? nicht, ob es ?berhaupt eine L?sung gibt. Ich versende mit Mime::Lite eine E-Mail. Das klappt auch soweit, nur gibt es ab und an die folgende Fehlermeldung: --- schnipp --- Die Mail konnte nicht versandt werden. Fehlerusrsache: SMTP MAIL command failed: Es kann keine genaue Anweisung gegeben werden, was im Fehlerfall zu tun ist. Eventuell Fehler beim Mailserver: "mail.gmx.net" --- schnapp --- Bin ich am Mailserver angemeldet mit einem Mailprogramm, klappt das Versenden von E-Mails ohne Probleme. Es hat deshalb f?r mich den Anschein, als ob ich in den anderen F?llen nicht angemeldet bin. Frage nun: Wie f?hre ich eine Anmeldung am Mailserver automatisch im Skript durch? Mime::Lite und Net::SMTP geben mir da nichts her. Viele Gr??e Karl-Heinz From mike at lamertz.net Tue Dec 13 05:50:51 2005 From: mike at lamertz.net (Michael Lamertz) Date: Tue, 13 Dec 2005 14:50:51 +0100 Subject: [Cologne-pm] Fehler beim Versenden einer E-Mail In-Reply-To: <439ED0B6.4040604@freenet.de> References: <439ED0B6.4040604@freenet.de> Message-ID: <20051213135051.GV29769@lamertz.net> On Tue, Dec 13, 2005 at 02:46:30PM +0100, Karl-Heinz Kuth wrote: > Bin ich am Mailserver angemeldet mit einem Mailprogramm, klappt das > Versenden von E-Mails ohne Probleme. Es hat deshalb f?r mich den > Anschein, als ob ich in den anderen F?llen nicht angemeldet bin. > > Frage nun: Wie f?hre ich eine Anmeldung am Mailserver automatisch im > Skript durch? Mime::Lite und Net::SMTP geben mir da nichts her. Hmm, haengt davon ab, was die da treiben. Benutzt der Provider evtl. pop-before-smtp? In dem Fall muesstest Du Dich via pop3 einloggen. -- Well, then let's give that Java-Wussie a beating... (me) Michael Lamertz | +49 2234 204947 / +49 171 6900 310 Sandstr. 122 | mike at lamertz.net 50226 Frechen | http://www.lamertz.net Germany | http://www.perl-ronin.de From khkuth at freenet.de Tue Dec 13 06:07:15 2005 From: khkuth at freenet.de (Karl-Heinz Kuth) Date: Tue, 13 Dec 2005 15:07:15 +0100 Subject: [Cologne-pm] Fehler beim Versenden einer E-Mail In-Reply-To: <20051213135051.GV29769@lamertz.net> References: <439ED0B6.4040604@freenet.de> <20051213135051.GV29769@lamertz.net> Message-ID: <439ED593.9040803@freenet.de> Hallo Michael und all die anderen, > >>Bin ich am Mailserver angemeldet mit einem Mailprogramm, klappt das >>Versenden von E-Mails ohne Probleme. Es hat deshalb f?r mich den >>Anschein, als ob ich in den anderen F?llen nicht angemeldet bin. >> >>Frage nun: Wie f?hre ich eine Anmeldung am Mailserver automatisch im >>Skript durch? Mime::Lite und Net::SMTP geben mir da nichts her. > > Hmm, haengt davon ab, was die da treiben. Benutzt der Provider evtl. > pop-before-smtp? In dem Fall muesstest Du Dich via pop3 einloggen. Wie findet mam denn heraus, was GMX oder andere Provider "da treiben"? Ich habe mir gerade mal das Modul Net::POP3 angesehen. Ich k?nnte mein Skript ja erweitern, aber wie versendet man denn da Anh?nge? Andere Idee, die ich habe: K?nnte es klappen, sich mit via pop3 einzuloggen und dann die Mail per SMTP zu senden? Klappt das denn auch bei mehreren Providern oder anders gefrage, was sind denn die technischen Voraussetzungen, dass die Methode dann funktioniert? Viele Gr??e Karl-Heinz From jens.gassmann at atomix.de Tue Dec 13 06:13:23 2005 From: jens.gassmann at atomix.de (Jens Gassmann) Date: Tue, 13 Dec 2005 15:13:23 +0100 Subject: [Cologne-pm] Fehler beim Versenden einer E-Mail In-Reply-To: <439ED593.9040803@freenet.de> References: <439ED0B6.4040604@freenet.de> <20051213135051.GV29769@lamertz.net> <439ED593.9040803@freenet.de> Message-ID: <439ED703.1040601@atomix.de> Hallo Karl-Heinz > Ich habe mir gerade mal das Modul Net::POP3 angesehen. Ich k?nnte mein > Skript ja erweitern, aber wie versendet man denn da Anh?nge? Andere > Idee, die ich habe: K?nnte es klappen, sich mit via pop3 einzuloggen und > dann die Mail per SMTP zu senden? Klappt das denn auch bei mehreren > Providern oder anders gefrage, was sind denn die technischen > Voraussetzungen, dass die Methode dann funktioniert? Ich w?rde SMTP-Auth verwenden. Das ist mittlerweile eine g?ngige und wenn ?ber TLS/SSL auch sichere Variante der Authentifizierung zum versenden von E-Mails. Es gibt einige Module im CPAN die auch SMTP-Auth k?nnen. SMTP-After-POP halte ich eher f?r eine Kr?cke. Viele E-Mailprovider bieten das auch nicht mehr an! Gr??e Jens -- "Programming is like sex, one mistake and you have to support it for the rest of your life." Michael Sinz EMail: jens.gassmann at atomix.de B?ro : 0221/975 08 20 http://www.atomix.de <- Photoblog http://www.aisware.de <- Content-Management-L?sung From khkuth at freenet.de Tue Dec 13 06:40:07 2005 From: khkuth at freenet.de (Karl-Heinz Kuth) Date: Tue, 13 Dec 2005 15:40:07 +0100 Subject: [Cologne-pm] Fehler beim Versenden einer E-Mail In-Reply-To: <439ED703.1040601@atomix.de> References: <439ED0B6.4040604@freenet.de> <20051213135051.GV29769@lamertz.net> <439ED593.9040803@freenet.de> <439ED703.1040601@atomix.de> Message-ID: <439EDD47.8090904@freenet.de> Hallo Jens, > Ich w?rde SMTP-Auth verwenden. Das ist mittlerweile eine g?ngige und > wenn ?ber TLS/SSL auch sichere Variante der Authentifizierung zum > versenden von E-Mails. > > Es gibt einige Module im CPAN die auch SMTP-Auth k?nnen. SMTP-After-POP > halte ich eher f?r eine Kr?cke. Viele E-Mailprovider bieten das auch > nicht mehr an! Danke f?r den Hinweis :-). Ich habe mir eine Version heruntergeladen und installiert. Jetzt muss ich "nur" noch die Mail mit SMTP-Auth versenden. Hat das schon mal jemand gemacht und hat ein paar Hinweise, was dabei zu beachten ist oder ein Codeschnipsel? Viele Gr??e Karl-Heinz From jens.gassmann at atomix.de Tue Dec 13 07:02:13 2005 From: jens.gassmann at atomix.de (Jens Gassmann) Date: Tue, 13 Dec 2005 16:02:13 +0100 Subject: [Cologne-pm] Fehler beim Versenden einer E-Mail In-Reply-To: <439EDD47.8090904@freenet.de> References: <439ED0B6.4040604@freenet.de> <20051213135051.GV29769@lamertz.net> <439ED593.9040803@freenet.de> <439ED703.1040601@atomix.de> <439EDD47.8090904@freenet.de> Message-ID: <439EE275.3090801@atomix.de> Hallo Karl-Heinz, > Danke f?r den Hinweis :-). Ich habe mir eine Version heruntergeladen und > installiert. Jetzt muss ich "nur" noch die Mail mit SMTP-Auth versenden. > Hat das schon mal jemand gemacht und hat ein paar Hinweise, was dabei > zu beachten ist oder ein Codeschnipsel? Welches Modul m?chtest du denn nun verwenden? Ein wenig mehr Information w?re nicht schlecht. Die Dokumentation des Modules hat meist auch ein oder zwei Beispiele auf denen man aufbauen kann, Gr??e Jens -- "Programming is like sex, one mistake and you have to support it for the rest of your life." Michael Sinz EMail: jens.gassmann at atomix.de B?ro : 0221/975 08 20 http://www.atomix.de <- Photoblog http://www.aisware.de <- Content-Management-L?sung From pagaltzis at gmx.de Tue Dec 13 07:08:35 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Tue, 13 Dec 2005 16:08:35 +0100 Subject: [Cologne-pm] Fehler beim Versenden einer E-Mail In-Reply-To: <439EDD47.8090904@freenet.de> <439ED593.9040803@freenet.de> <20051213135051.GV29769@lamertz.net> References: <439ED0B6.4040604@freenet.de> <20051213135051.GV29769@lamertz.net> <439ED593.9040803@freenet.de> <439ED703.1040601@atomix.de> <439EDD47.8090904@freenet.de> <439ED0B6.4040604@freenet.de> <20051213135051.GV29769@lamertz.net> <439ED593.9040803@freenet.de> <439ED0B6.4040604@freenet.de> <20051213135051.GV29769@lamertz.net> Message-ID: <20051213150835.GC4809@klangraum> * Michael Lamertz [2005-12-13 14:55]: > Benutzt der Provider evtl. pop-before-smtp? In dem Fall > muesstest Du Dich via pop3 einloggen. GMX bietet das, glaube ich, an, aber POP-before-SMTP ist sowieso eine Kr?cke. * Karl-Heinz Kuth [2005-12-13 15:10]: > Ich k?nnte mein Skript ja erweitern, aber wie versendet man > denn da Anh?nge? Garnicht, POP3 ist ein Protokoll, um Mail abzuholen, und hat mit dem Versenden ?berhaupt nichts zu tun. Allerdings verlangt es (aus einleuchtenden Gr?nden) eine Benutzerauthentifikation, die basic SMTP garnicht vorsieht. Verfahren also: man loggt sich per POP3 ein, der Server merkt sich kurzfristig die IP, und erlaubt es f?r eine kurze Weile, von dieser IP aus per SMTP Mail zu verschicken. > Andere Idee, die ich habe: K?nnte es klappen, sich mit via pop3 > einzuloggen und dann die Mail per SMTP zu senden? Wie oben beschrieben, w?re das sogar genau die einzige M?glichkeit. > Klappt das denn auch bei mehreren Providern oder anders > gefrage, was sind denn die technischen Voraussetzungen, dass > die Methode dann funktioniert? Das klappt bei jedem Provider, der POP-before-SMTP anbietet. Das ist allerdings auf dem R?ckzug. Statt dieser Kr?cke wird heutzutage erweitertes SMTP eingesetzt, welches gleich selber Authentifizierungsbefehle enth?lt, sodass der (zudem nicht 100%ig sichere) Umweg ?ber POP3 entf?llt. > Ich habe mir eine Version heruntergeladen und installiert. > Jetzt muss ich "nur" noch die Mail mit SMTP-Auth versenden. Hat > das schon mal jemand gemacht und hat ein paar Hinweise, was > dabei zu beachten ist oder ein Codeschnipsel? Du installierst Email::Send::SMTP::Auth (abh?ngig von Email::Send und Net::SMTP_auth) und ersetzt $mimelite->send; durch use Email::Send; send SMTP::Auth => $mimelite->as_string, 'smtp.example.com', 'user', 'pass'; Gruss, -- #Aristoteles *AUTOLOAD=*_;sub _{s/(.*)::(.*)/print$2,(",$\/"," ")[defined wantarray]/e;$1}; &Just->another->Perl->hacker; From khkuth at freenet.de Tue Dec 13 07:26:18 2005 From: khkuth at freenet.de (Karl-Heinz Kuth) Date: Tue, 13 Dec 2005 16:26:18 +0100 Subject: [Cologne-pm] Fehler beim Versenden einer E-Mail In-Reply-To: <20051213150835.GC4809@klangraum> References: <439ED0B6.4040604@freenet.de> <20051213135051.GV29769@lamertz.net> <439ED593.9040803@freenet.de> <439ED703.1040601@atomix.de> <439EDD47.8090904@freenet.de> <439ED0B6.4040604@freenet.de> <20051213135051.GV29769@lamertz.net> <439ED593.9040803@freenet.de> <439ED0B6.4040604@freenet.de> <20051213135051.GV29769@lamertz.net> <20051213150835.GC4809@klangraum> Message-ID: <439EE81A.1090101@freenet.de> Hallo, > Garnicht, POP3 ist ein Protokoll, um Mail abzuholen, und hat mit > dem Versenden ?berhaupt nichts zu tun. Allerdings verlangt es > (aus einleuchtenden Gr?nden) eine Benutzerauthentifikation, die > basic SMTP garnicht vorsieht. ja, das hab' ich auch mal gewusst. Wenn man nicht t?glich damit zu tun hat, vergisst man so manches. Peinlich... > Du installierst Email::Send::SMTP::Auth (abh?ngig von Email::Send > und Net::SMTP_auth) und ersetzt > > $mimelite->send; > > durch > > use Email::Send; > send SMTP::Auth => $mimelite->as_string, 'smtp.example.com', 'user', 'pass'; > Was tun, wenn das Modul Email::Send nicht f?r mein OS/Perlversion verf?gbar ist? Die Version sieht so sch?n einfach aus. Wie sieht denn das Fehlerhandling aus? Wo und wie bekommnt man denn eine Antwort, wenn der Befehl "send SMTP::Auth => $mimelite->as_string, 'smtp.example.com', 'user', 'pass';" nicht korrekt l?uft, weil SMTP-Server, UserId oder PW nicht korrekt sind? Etwa in der Varialben "$@"? Ich m?chte eine aussagekr?ftige Fehlermeldung, falls die Werte nicht zueinander passen. Viele Gr??e Karl-Heinz From pagaltzis at gmx.de Tue Dec 13 07:50:30 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Tue, 13 Dec 2005 16:50:30 +0100 Subject: [Cologne-pm] Fehler beim Versenden einer E-Mail In-Reply-To: <439EE81A.1090101@freenet.de> References: <439ED593.9040803@freenet.de> <439ED703.1040601@atomix.de> <439EDD47.8090904@freenet.de> <439ED0B6.4040604@freenet.de> <20051213135051.GV29769@lamertz.net> <439ED593.9040803@freenet.de> <439ED0B6.4040604@freenet.de> <20051213135051.GV29769@lamertz.net> <20051213150835.GC4809@klangraum> <439EE81A.1090101@freenet.de> Message-ID: <20051213155030.GH4809@klangraum> * Karl-Heinz Kuth [2005-12-13 16:30]: > Was tun, wenn das Modul Email::Send nicht f?r mein > OS/Perlversion verf?gbar ist? Die Version sieht so sch?n > einfach aus. Wie soll das gehen? Das sind alles Pure-Perl-Module. :-) > Wie sieht denn das Fehlerhandling aus? Wo und wie bekommnt man > denn eine Antwort, wenn der Befehl "send SMTP::Auth => > $mimelite->as_string, 'smtp.example.com', 'user', 'pass';" > nicht korrekt l?uft, weil SMTP-Server, UserId oder PW nicht > korrekt sind? Hmm, daran hatte ich nicht gedacht ? und das ist auch ziemlich d?mlich, denn anscheinend definiert Email::Send das selber nicht, und ?berl?sst es jeder Unterklasse, wie sie es machen will. Und Email::Send::SMTP::Auth gibt einfach nur false zur?ck und gibt die Fehlermeldung als Warnung aus (und dann auch nur, wenn $VERBOSE gesetzt ist). Bah. Bleibt wohl nichts anderes, als Email::Send wegzulassen und die lange Variante zu nehmen, wo du Net::SMTP_auth direkt selber verwendest: use Net::SMTP_auth; my $smtp = Net::SMTP_auth->new( 'smtp.example.com' ); $smtp->auth( 'CRAM-MD5', 'user', 'password' ); $smtp->mail( $from_address ); $smtp->to( $to_address ); $smtp->data( $mimelite->as_string ); $smtp->quit; Da greifen dann alle ?blichen Net::Cmd- Fehlerbehandlungsmechanismen; siehe Doku. Gruss, -- Aristoteles ?Wer nicht ?ber sich selbst lachen kann, nimmt das Leben nicht ernst genug.? From khkuth at freenet.de Wed Dec 14 06:39:12 2005 From: khkuth at freenet.de (Karl-Heinz Kuth) Date: Wed, 14 Dec 2005 15:39:12 +0100 Subject: [Cologne-pm] Fehler beim Versenden einer E-Mail In-Reply-To: <20051213155030.GH4809@klangraum> References: <439ED593.9040803@freenet.de> <439ED703.1040601@atomix.de> <439EDD47.8090904@freenet.de> <439ED0B6.4040604@freenet.de> <20051213135051.GV29769@lamertz.net> <439ED593.9040803@freenet.de> <439ED0B6.4040604@freenet.de> <20051213135051.GV29769@lamertz.net> <20051213150835.GC4809@klangraum> <439EE81A.1090101@freenet.de> <20051213155030.GH4809@klangraum> Message-ID: <43A02E90.6080909@freenet.de> Hallo, >>Was tun, wenn das Modul Email::Send nicht f?r mein >>OS/Perlversion verf?gbar ist? Die Version sieht so sch?n >>einfach aus. > > Wie soll das gehen? Das sind alles Pure-Perl-Module. :-) Wei? ich welches Perlmodul in C kompiliert wurde oder auch in Abh?ngigkeit einer bestimmten Perlversion erstellt wurde? Sorry, aber bei der Masse von Perlmodulen bin ich leicht ?berfordert. Da schaue ich nur nach, gibt es das Modul f?r meine Perlversion oder nicht. Wenn nicht, dann habe ich erst mal Pech gehabt. Das Versenden von E-Mails verstehe ich immer noch nicht so richtig. Es folgt ein bi?chen Coding von mir. Anyway, warum wird eigentlich immer gesagt mal soll use strict verwenden und in allen Beispielen in der Dokumentation fehlt dieses? Die meisten Beispiele in der Dokumentation sind sowieso nicht lauff?hig. Kommen wir nicht ab des Weges. Wieso l?uft mein Skript nicht? Anpassungen m?ssen nur oben in der Variablendeklaration gemacht werden, dann sollte es ?berall laufen. Der einkommentierte eval Ausdruck ist noch ein "Relikt" ohne Net::SMTP_auth. Dies ist ein Auszug eines etwas komplexeren Skriptes zum Versenden von E-Mails im Batchmodus. Ich kann z. B. den Mailtext aus beliebigen Textdateien erzeugen, kann beliebige Anh?nge anf?gen und noch ein paar andere Dinge. Ich habe es auf ein Minimum reduziert. Falls es noch Zeilen gibt die nicht klar sein sollen, k?nnte es darauf zur?ckzuf?hren sein. Viele Gr??e Karl-Heinz use strict; use Net::SMTP_auth; use Net::Cmd; use Mime::Lite; # Variablendeklaration # m?ssen angepasst werden: my $header_absender = 'xxx at gmx.net'; my $mail_to = 'xxx at gmx.net'; my $mailsystem_server = 'mail.gmx.net'; my $mailsystem_user = 'xxx at gmx.net'; my $mailsystem_password = 'xxx'; # k?nnen (brauchen aber nicht) angepasst werden: my $mail_cc = ""; my $mail_bcc = ""; my $mail_betreff = "Mail versenden mit SMTP_auth"; my $mail_text = "The quick brown fox jumps over the lazy dog."; my $mail_object; my $smtp_object; $smtp_object = Net::SMTP_auth->new( $mailsystem_server ); if ( $@ ) { # Fehlermeldung ist im kompletten Skript etwas aussagekr?ftger print "Fehlerursache bei Befehl Net::SMTP_auth: $@ \n"; # } # ende if ( $@ ) { $smtp_object->auth( 'CRAM-MD5', $mailsystem_user, $mailsystem_password ); if ( $@ ) { # Fehlermeldung ist im kompletten Skript etwas aussagekr?ftger print "Fehlerursache bei Befehl auth: $@ \n"; # } # ende if ( $@ ) { $mail_object = MIME::Lite->new( From => $header_absender , To => $mail_to , Cc => $mail_cc , Bcc => $mail_bcc , Subject => $mail_betreff , Type => 'Text' , Data => $mail_text ); # Es folgen in einer Schleife eventuelle Anh?nge, # die lasse ich aber zun?chst weg. $smtp_object->data( $mail_object->as_string ); $smtp_object->send ( $mail_to ); $smtp_object->quit; #eval { $mail_object->send_by_smtp( $mailsystem_server ) }; if ( $@ ) { # Fehlermeldung ist im kompletten Skript etwas aussagekr?ftger print "Fehlerursache bei Befehl send_by_smtp: $@ \n"; # } # ende if ( $@ ) { From pagaltzis at gmx.de Wed Dec 14 08:01:23 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Wed, 14 Dec 2005 17:01:23 +0100 Subject: [Cologne-pm] Fehler beim Versenden einer E-Mail In-Reply-To: <43A02E90.6080909@freenet.de> References: <439EDD47.8090904@freenet.de> <439ED0B6.4040604@freenet.de> <20051213135051.GV29769@lamertz.net> <439ED593.9040803@freenet.de> <439ED0B6.4040604@freenet.de> <20051213135051.GV29769@lamertz.net> <20051213150835.GC4809@klangraum> <439EE81A.1090101@freenet.de> <20051213155030.GH4809@klangraum> <43A02E90.6080909@freenet.de> Message-ID: <20051214160123.GP4809@klangraum> * Karl-Heinz Kuth [2005-12-14 15:40]: > Wei? ich welches Perlmodul in C kompiliert wurde oder auch in > Abh?ngigkeit einer bestimmten Perlversion erstellt wurde? Nein, musst du auch nicht wissen, du musst nur wissen, wo es steht. > Sorry, aber bei der Masse von Perlmodulen bin ich leicht > ?berfordert. Ich weiss das auch nicht auswendig. Ich habe nachgeschaut. ZB. listet http://search.cpan.org/dist/Net-SMTP_auth/MANIFEST keine .xs-Dateien auf, sondern nur ein .pm, enth?lt also nur Perl-Code. > Da schaue ich nur nach, gibt es das Modul f?r meine Perlversion > oder nicht. Wenn nicht, dann habe ich erst mal Pech gehabt. Wo steht denn so eine Information? Auf dem CPAN habe ich sowas nirgends gesehen. > Anyway, warum wird eigentlich immer gesagt mal soll use strict > verwenden und in allen Beispielen in der Dokumentation fehlt > dieses? Die meisten Beispiele in der Dokumentation sind sowieso > nicht lauff?hig. Kommen wir nicht ab des Weges. Dass in 10-zeiligen Beispielsourcen oben kein `use strict;` dransteht, ist wohl nicht weiter verwunderlich. Dass die Beispiele oft kleine Fehler enthalten und deshalb nicht direkt lauff?hig sind, ist allerdings ein bekanntes Leid. Sie werden halt fast nie debuggt. Es gibt ein paar M?glichkeiten, das Testen von Beispielcode einzurichten, aber man muss sich darum bem?hen, und das tun leider nur wenige. > Wieso l?uft mein Skript nicht? Was heisst ?l?uft nicht?: kompiliert nicht? Tut nichts? Bricht mit Fehlermeldung ab? Computer explodiert? Ich vermute, es tut einfach nichts gescheites. Die Net::SMTP-Doku hat zu ->send() n?mlich folgendes zu sagen: This initiates the sending of a message. The method recipient should be called for each address that the message is to be sent to. Das tust du erst, nachdem du ->data() aufgerufen hast. Du schickst du dem Server also erstmal einen Batzen irgendwelcher Daten, die er garnicht erwartet, und bittest ihn erst dann, eine Nachricht entgegenzunehmen; und das, ohne ihm jemals zu sagen, wem er die Nachricht denn schicken soll. Wie soll das funktionieren? Der Beispielcode in der Doku zu Net::SMTP und auch zu Net::SMTP_auth zeigt das jedenfalls in der richtigen Reihenfolge. Ausserdem pr?fst du dauernd $@, obwohl du keine eval()s im Code hast. Wieso? Die Net::Cmd-Doku, auf die sowohl Net::SMTP_auth sowie das dort erw?hnte Net::SMTP verweisen, sagt mir auch nichts von $@. Hast du da reingesehen? Gruss, -- #Aristoteles *AUTOLOAD=*_;sub _{s/(.*)::(.*)/print$2,(",$\/"," ")[defined wantarray]/e;$1}; &Just->another->Perl->hacker; From khkuth at freenet.de Wed Dec 14 10:23:43 2005 From: khkuth at freenet.de (Karl-Heinz Kuth) Date: Wed, 14 Dec 2005 19:23:43 +0100 Subject: [Cologne-pm] Fehler beim Versenden einer E-Mail In-Reply-To: <20051214160123.GP4809@klangraum> References: <439EDD47.8090904@freenet.de> <439ED0B6.4040604@freenet.de> <20051213135051.GV29769@lamertz.net> <439ED593.9040803@freenet.de> <439ED0B6.4040604@freenet.de> <20051213135051.GV29769@lamertz.net> <20051213150835.GC4809@klangraum> <439EE81A.1090101@freenet.de> <20051213155030.GH4809@klangraum> <43A02E90.6080909@freenet.de> <20051214160123.GP4809@klangraum> Message-ID: <43A0632F.8050404@freenet.de> Hallo, > Ich weiss das auch nicht auswendig. Ich habe nachgeschaut. > ZB. listet http://search.cpan.org/dist/Net-SMTP_auth/MANIFEST > keine .xs-Dateien auf, sondern nur ein .pm, enth?lt also nur > Perl-Code. Ich schaue bei ActiveState nach wegen der ppms, (weil ich ein fauler Mensch bin) und da gibt es das nicht f?r die von mir eingesetzte Perlversion. Trotzdem meine allgemeine Frage, wer sagt mir, dass das ein beliebiges Modul unter allen unterst?tzten Perlversionen l?uft? Ein Perlmodul kann ja auch abh?ngig von einer bestimmten Perlversion sein. >>Anyway, warum wird eigentlich immer gesagt mal soll use strict >>verwenden und in allen Beispielen in der Dokumentation fehlt >>dieses? Die meisten Beispiele in der Dokumentation sind sowieso >>nicht lauff?hig. Kommen wir nicht ab des Weges. > > Dass in 10-zeiligen Beispielsourcen oben kein `use strict;` > dransteht, ist wohl nicht weiter verwunderlich. Sehe ich anders, wenn ich so vehement ?berall einfordere, dass das Konstrukt genutzt werden soll, geh?rt es auch in einen 10-zeiliges Beispielskript, andernfalls ist f?r mich die Forderung unglaubw?rdig. Hinz kommt, dass es manchmal verdammt viel Arbeit herauszufinden, wie man was definieren muss, damit das Skript mit use strict funktioniert. Das habe ich selber schon beim Modul Inifile erlebt. Ich musste daraufhin use strict abschalten. > Dass die Beispiele oft kleine Fehler enthalten und deshalb nicht > direkt lauff?hig sind, ist allerdings ein bekanntes Leid. Sie > werden halt fast nie debuggt. Es gibt ein paar M?glichkeiten, > das Testen von Beispielcode einzurichten, aber man muss sich > darum bem?hen, und das tun leider nur wenige. Mir war es unbekannt. Danke f?r die Info! Das erkl?rt so manches. >>Wieso l?uft mein Skript nicht? > > Was heisst ?l?uft nicht?: kompiliert nicht? Tut nichts? Bricht > mit Fehlermeldung ab? Computer explodiert? Computer explodiert :-) - der war gut. Ein nicht kompilierendes Skript w?rde ich in diesem Fall nicht posten. Es schickt keine Mails ab und eine Authentifizierung scheint es auch nicht zu machen. > Ich vermute, es tut einfach nichts gescheites. Die Net::SMTP-Doku > hat zu ->send() n?mlich folgendes zu sagen: > > This initiates the sending of a message. The method recipient > should be called for each address that the message is to be > sent to. > > Das tust du erst, nachdem du ->data() aufgerufen hast. Du > schickst du dem Server also erstmal einen Batzen irgendwelcher > Daten, die er garnicht erwartet, und bittest ihn erst dann, eine > Nachricht entgegenzunehmen; und das, ohne ihm jemals zu sagen, > wem er die Nachricht denn schicken soll. > > Wie soll das funktionieren? Im Objekt $mail_object = MIME::Lite->new( From => $header_absender , To => $mail_to , Cc => $mail_cc , Bcc => $mail_bcc , Subject => $mail_betreff , Type => 'Text' , Data => $mail_text ); definiere ich, wer was wie bekommen soll. Bei Mime::Lite kann ich dann einfach sagen, send_by_smtp() und gut ist. Es ist gew?hrleistet, dass es einen Empf?nger, Absender, Betreff und Mailtext gibt. Das passiert aber in einem Teil, den ich nicht gepostet habe. Ist f?r die Diskussion eher weniger von Belang. Es ist somit m. E. alles f?r eine "rechtm??ige" E-Mail verhanden, warum sollte da der Server pingelig werden und sagen, "N?, ich wei? nicht, wer das bekommen soll?" Ich m?chte auch weiterhin dieses Objekt unbedingt nutzen. Ich f?ge sp?ter noch eventuelle Anh?nge an das Objekt. > Der Beispielcode in der Doku zu Net::SMTP und auch zu > Net::SMTP_auth zeigt das jedenfalls in der richtigen Reihenfolge. Die Beispiele zu Net::SMPT und Net::SMPT_auth sind auch f?r den Hintern, da wird n?mlich auch keine E-Mail mit verschickt. Und dann das: mail ( ADDRESS [, OPTIONS] ) send ( ADDRESS ) send_or_mail ( ADDRESS ) send_and_mail ( ADDRESS ) Ich bin ?berfordert. Ich wei? nicht, wo der Unterschied zwischen den 4 Methoden ist und welche f?r was zu nutzen ist. Die Doku ist mir an dieser Stelle auch keine Hilfe. > Ausserdem pr?fst du dauernd $@, obwohl du keine eval()s im Code > hast. Wieso? Die Net::Cmd-Doku, auf die sowohl Net::SMTP_auth > sowie das dort erw?hnte Net::SMTP verweisen, sagt mir auch nichts > von $@. Hast du da reingesehen? Ich hatte die "Mailbefehle" mal in ein eval() gepackt und wollte damit die Fehlermeldungen erhalten. Ist irgendwie stehengeblieben. Ist so nat?rlich Bl?dsinn. In die Net::Cmd Doku habe ich mal reingeguckt, weil man mit der Methode message() eine Antworttext des Servers erh?llt. Viele Gr??e Karl-Heinz From mike at lamertz.net Thu Dec 15 01:54:22 2005 From: mike at lamertz.net (Michael Lamertz) Date: Thu, 15 Dec 2005 10:54:22 +0100 Subject: [Cologne-pm] Happy New Year In-Reply-To: <004701c60125$8ea58df0$fb8610f4@eutiwut> References: <004701c60125$8ea58df0$fb8610f4@eutiwut> Message-ID: <20051215095421.GW29769@lamertz.net> Hi Leute, frueher mussten Posts von Non-Subscribern erst von mir validiert werden. Anscheinend ist dieses Feature bei einem der diversen Server-Umzuege von pm.org verloren gegangen. Ich hab' das jetzt wieder aktiviert, so dass Ihr zukuenftig (hoffentlich) wieder von so'nem Scheiss verschont bleibt. Gruss Michael -- Well, then let's give that Java-Wussie a beating... (me) Michael Lamertz | +49 2234 204947 / +49 171 6900 310 Sandstr. 122 | mike at lamertz.net 50226 Frechen | http://www.lamertz.net Germany | http://www.perl-ronin.de From pagaltzis at gmx.de Fri Dec 16 05:49:39 2005 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Fri, 16 Dec 2005 14:49:39 +0100 Subject: [Cologne-pm] Happy New Year In-Reply-To: <20051215095421.GW29769@lamertz.net> References: <004701c60125$8ea58df0$fb8610f4@eutiwut> <20051215095421.GW29769@lamertz.net> Message-ID: <20051216134939.GB28412@klangraum> * Michael Lamertz [2005-12-16 14:27]: > Ich hab' das jetzt wieder aktiviert, so dass Ihr zukuenftig > (hoffentlich) wieder von so'nem Scheiss verschont bleibt. Danke, dass du dem GMX-Spamfilter die Arbeit abnimmst; ich hatte es garnicht gesehen. ;-) (Ist nat?rlich trotzdem besser so; z.B. ist diese Liste bei mir in der procmailrc als spamfrei eingestuft.) Gruss, -- Aristoteles ?Wer nicht ?ber sich selbst lachen kann, nimmt das Leben nicht ernst genug.? From mike at lamertz.net Sat Dec 31 15:00:06 2005 From: mike at lamertz.net (Michael Lamertz) Date: Sun, 1 Jan 2006 00:00:06 +0100 Subject: [Cologne-pm] Treffen am 11.01.2006... Message-ID: <20051231230006.52F481C855D@tweety> Yo! Das n?chste Treffen findet wie gewohnt statt am 2. Mittwoch des Monats, also am 11.01.2006, in der Sansibar Trierer Str. 41 50674 K?ln ab ca. 18:30 Dies ist eine automatisch erzeugte Nachricht. Sollte mittlerweile auf der Liste ein anderer Termin verabredet worden sein, so ist diese Mail hinf?llig.