Font
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]6203[/thread]

Anzahl Zeilen in Textdatei ermitteln: (Wie mache ich das am schnellsten?) (page 4)



<< |< 1 2 3 4 >| >> 35 entries, 4 pages
Taulmarill
 2004-04-21 18:00
#81726 #81726
User since
2004-02-19
1750 articles
BenutzerIn

user image
[quote=Crain ,,]Ich hab auch nochmal gebenchmarked mit komischem Ergebnis:[/quote]
so komisch is das gar nicht,warscheinlich war der vorsprung in variante C systemabhängig, habe auf einer Sun SPARC mit Solaris 8 gebenchmarkt.

[quote=Crain ,,]-s geht rasant schnell... hmmm da muss ich doch wohl in den saueren Apfel beißen und die Zeichen jeder Zeile ermitteln...[/quote]
ist ja auch klar, -s zieht sich einfach die grösse in bytes aus dem Filesystem und wie man die zeilengrösse verarbeitet kannst du ja aus meinem script saugen und anpassen.\n\n

<!--EDIT|Taulmarill|1082556042-->
$_=unpack"B*",~pack"H*",$_ and y&1|0& |#&&print"$_\n"for@.=qw BFA2F7C39139F45F78
0A28104594444504400 0A2F107D54447DE7800 0A2110453444450500 73CF1045138445F4800 0
F3EF2044E3D17DE 8A08A0451412411 F3CF207DF41C79E 820A20451412414 83E93C4513D17D2B
Taulmarill
 2004-04-21 18:28
#81727 #81727
User since
2004-02-19
1750 articles
BenutzerIn

user image
also, wenn mal jemand nen progress bar auf ascii terminal bauen will, sollte derjenige sich mal Term::ProgressBar anschauen, sieht cool aus.
$_=unpack"B*",~pack"H*",$_ and y&1|0& |#&&print"$_\n"for@.=qw BFA2F7C39139F45F78
0A28104594444504400 0A2F107D54447DE7800 0A2110453444450500 73CF1045138445F4800 0
F3EF2044E3D17DE 8A08A0451412411 F3CF207DF41C79E 820A20451412414 83E93C4513D17D2B
Crian
 2004-04-21 18:30
#81728 #81728
User since
2003-08-04
5866 articles
ModeratorIn
[Homepage]
user image
Ich hab Deinen pure mans progressbar jetzt für die nicht-Oberflächen-Version eingebaut, danke nochmal :)
Den Fall von Dateien mit weniger als 80 Byte ignoriere ich mal ;)
Denn ich gehe jetzt über die Bytezahl.
Ich hoffe nur, dass die Bytezahl von -s bei großen Dateien auch stimmt, damit hatte ich schonmal Probleme. Naja, zur Not muss ich da selber zählen, aber dann dauert es wieder :-(
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
sri
 2004-04-21 18:46
#81729 #81729
User since
2004-01-29
828 articles
BenutzerIn
[Homepage] [default_avatar]
[quote=Taulmarill,21.04.2004, 15:54]achso, und wenn wir schon beim klugscheissen sind
[quote=sri,21.04.2004, 14:59]Ich dachte das mit den Globs und den Bienchen hätt ich dir neulich erklärt. :-P[/quote]
das waren keine globs sondern typeglobs. wie so häufig sind deine antworten destruktiv ;-)[/quote]
Also hast du das Pantherbuch noch nicht zuende gelesen. :(

Typeglob und Glob ist das selbe, hinter jedem Namen in Perl steckt ein Glob(GV), jeder GV hat einen Pointer zu einem GP und jeder GP enthält eine reihe von Pointern zu den einzelnen Datentypen (SV, HV; AV, IO...).

Bei der Anweisung *_=*. wird einfach dem GV mit dem NAME _\0 der GP des GV mit dem NAME .\0 verpasst. Das ganze nennt sich wie Crian schon sagte alias, aliase sind schneller als referenzen weil beim zugriff das dereferenzieren entfällt.

Jaja, ich hab die ganze Magie etwas trivialisiert aber ich denke so
ist es für nicht Core Hacker leicht verständlich. ;)

</Klugscheiss>
Taulmarill
 2004-04-21 19:19
#81730 #81730
User since
2004-02-19
1750 articles
BenutzerIn

user image
also, ich betrachte das ganze aus der perl-noncore-hacker sicht. oder aus der sicht des kamelbuchs. und da sind typeglobs und globs was anderes, aber die globs im kamelbuch sind auch nicht die perlcore-globs.
somit kollidierten hier identische begrifflichkeiten mit unterschiedlichem inhalt.

aber deine ausführungen trivialisieren keine magie. vielmehr erklären sie, alles andere währe täuschung.
es ist halt eine tatsache das mit dem verstehen eine demystifizierung der vorher für magie gehaltenen dinge einher geht.
$_=unpack"B*",~pack"H*",$_ and y&1|0& |#&&print"$_\n"for@.=qw BFA2F7C39139F45F78
0A28104594444504400 0A2F107D54447DE7800 0A2110453444450500 73CF1045138445F4800 0
F3EF2044E3D17DE 8A08A0451412411 F3CF207DF41C79E 820A20451412414 83E93C4513D17D2B
<< |< 1 2 3 4 >| >> 35 entries, 4 pages



View all threads created 2004-04-21 11:58.