Schrift
[thread]12830[/thread]

perl per BAT aufgerufen -> keine Infoausgabe

Leser: 1


<< |< 1 2 >| >> 11 Einträge, 2 Seiten
jan99
 2008-11-26 15:41
#116623 #116623
User since
2008-09-18
439 Artikel
BenutzerIn
[default_avatar]
Moin !

ich habe ein perl script das in seinem ablauf einige informationen im befehlszeilenfenster ausgibt.

wenn ich dieses über ein BAT-file aufrufe, dann erscheinden die meldungen nicht im CMD-fenster des aufgerufenen BAT-files.

kann man dieses irgendwie erzwingen und wenn es durch ein zusätzliches fenster ist in dem das perl seine meldungen ausgibt.

gruß jan :-)
perl-Greenhorn - Win7 64bit / strawberry (ehem. activeperl) - www.OpenStreetMap.de
Crian
 2008-11-26 15:45
#116624 #116624
User since
2003-08-04
5873 Artikel
ModeratorIn
[Homepage]
user image
Meine tun das von Haus aus, egal ob ich selbst ein Terminal öffne und es starte oder es per Batch laufen lasse.
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
jan99
 2008-11-26 15:56
#116626 #116626
User since
2008-09-18
439 Artikel
BenutzerIn
[default_avatar]
hmmmm !

verwundert mich auf den ersten blick - habe das mit einem mini-beispiel nachvollzogen und du hast recht! (windows)

könnte das mit rechnerauslastung zusammenhängen und das deshalb die ausgabe nicht erfolgt (das skript saugt dateien)?

gruß Jan :-)
perl-Greenhorn - Win7 64bit / strawberry (ehem. activeperl) - www.OpenStreetMap.de
jan
 2008-11-26 16:07
#116628 #116628
User since
2003-08-04
2536 Artikel
ModeratorIn
[Homepage] [default_avatar]
vielleicht wird die ausgabe nur gebuffert, pack doch mal
$|++;
oben in's perlscript und schau, ob's dann klappt. gerade, wenn das script länger läuft kann's sonst sein, dass der output erst am ende kommt, wenn der buffer geleert wird.
jan99
 2008-11-26 16:26
#116629 #116629
User since
2008-09-18
439 Artikel
BenutzerIn
[default_avatar]
hi !

unter http://www.tappenbeck.net/forum/osm/ImageDownload_... habe ich das ganze einmal hinterlegt.

es wird auf eine server zugegriffen auf welchem sich bilder für openstreetmap befinden.

in der txt-datei stehen zu ladende dateien (liste kann auch gekürzt werden). in windows ziehe ich die txt auf die bat-datei und dann geht es los.

nun bin ich einmal gespannt !

gruß Jan :-)
perl-Greenhorn - Win7 64bit / strawberry (ehem. activeperl) - www.OpenStreetMap.de
Gast Gast
 2008-11-26 18:37
#116633 #116633
du musst ans ende von jedem print ein "\n" setzen allso:
Code: (dl )
print "Bla\n"
sonst wird alles in einer zeile und auf einmal ausgegeben.
jan99
 2008-11-26 19:45
#116634 #116634
User since
2008-09-18
439 Artikel
BenutzerIn
[default_avatar]
hi !

auch wenn ich das mache, dann bekomme ich noch die Überschrift "Herunterladen..."

nachfolgende Zeilen werden nicht angezeigt.

Jetzt sieht der Code so aus:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
print("Herunterladen von IMG-Kacheln....\n");

...

# öffnen der Liste mit den Image-Dateien
open(my $fh, '<', $liste) or die "Fehler bei open $liste ($!)\n"; # < immer den Fehlergrund mit ausgeben

# Auslesen der Dateinamen
while(my $kachelname=<$fh>){
chomp($kachelname);
$url=$url4image.$kachelname.$bz_prefix;
print("$kachelname\n");

my ($file)=$url=~m|/([^/]+?)$|;
# etwas ausfuerlichere Ausgabe der Fehler beim Download
# zudem wird jetzt nur entpackt wenn wirklich was herunter geladen wurde.
print("unzip ...\n");
print("$pfad$file.\n\n");
my $rc=getstore($url, "$pfad$file");
if( is_success($rc)){
system("$unzip $pfad$file") ==0 or warn "Fehler bei $unzip $pfad$file ($@)\n"; # < Fehlergund ausgeben
}else{
warn "Fehler bei download $url nach $pfad$file (".status_message($rc).")\n"; # < Fehlergrund mit ausgeben
}
}


.... ?

Nachtrag:
habe ich zunächst nicht darüber nachgedacht - aber an dem \n kann es doch nicht gelegen haben, da beim direkten starten (code aus der url) auch die zeilen umgebrochen ausgegeben werden!!!!!

gruß Jan :-)
perl-Greenhorn - Win7 64bit / strawberry (ehem. activeperl) - www.OpenStreetMap.de
jan99
 2008-11-27 00:26
#116640 #116640
User since
2008-09-18
439 Artikel
BenutzerIn
[default_avatar]
kann das mit vista zusammenhängen ???

Gruß Jan :-)
perl-Greenhorn - Win7 64bit / strawberry (ehem. activeperl) - www.OpenStreetMap.de
Crian
 2008-11-27 10:12
#116649 #116649
User since
2003-08-04
5873 Artikel
ModeratorIn
[Homepage]
user image
Der Standardweg ist, ein kleinstmögliches Beispiel zu basteln, so dass das Problem noch auftritt.
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
jan99
 2008-11-28 14:28
#116691 #116691
User since
2008-09-18
439 Artikel
BenutzerIn
[default_avatar]
hi !

habe die ursache gefunden - es lag an der batch-datei.

dort stand:

Code: (dl )
rem test.pl %1 > report.txt


und mit

Code: (dl )
 > report.txt


wird die ausgabe der perl-datei in die report.txt umgeleitet und nicht mehr ausgegeben !!!

ich war immer davon ausgegangen, dass auch weiterhin die ausgabe im cmd-fenster zusätzlich erfolgt.

trotzdem danke für die unterstützung !

gruß Jan :-)
perl-Greenhorn - Win7 64bit / strawberry (ehem. activeperl) - www.OpenStreetMap.de
<< |< 1 2 >| >> 11 Einträge, 2 Seiten



View all threads created 2008-11-26 15:41.