Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
Textausgabe ohne Newline

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Programmieren - Allgemein
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
aebi



Anmeldungsdatum: 02.12.1999
Beiträge: 41
Wohnort: Kastanienbaum

BeitragVerfasst am: 20. Feb 2003 23:03   Titel: Textausgabe ohne Newline

Hallo zusammen

Ich habe ein kleines, nerviges Problem auf dass ich einfach keine Antwort finden kann.
Ich habe mir ein Perl-Skript geschrieben indem eine Fortschrittsanzeige aus Punkten vorkommt. (Getting Discs ......)
Leider wir mir der Text erst nach dem abschliessenden Newline angezeigt. (Und es ist somit keine Fortschrittsanzeige mehr, da alles auf einmal erscheint)

CODE:
foreach my $disc (@discs) {
    my $detail = $cddb->get_disc_details($genre, $cddb_id);
    print ".";
}
print "\n"

Wie kann ich das am besten umgehen?

Besten Dank!

Philippe
 
Benutzer-Profile anzeigen Private Nachricht senden

Jochen
Gast





BeitragVerfasst am: 21. Feb 2003 8:27   Titel: Re: Textausgabe ohne Newline

Hier, hier! Ich, ich!

Ernsthaft: Viel perl kann ich nicht, aber das hatte ich mal irgendwo gesehen und als Codebeispiel unter in "man perlfunc" wiedergefunden:
code:
select STDOUT ; $| = 1; # make unbuffered
Wer mehr perl kann als ich, kann vielleicht auch sagen, ob das select-Statement vorher notwendig ist ind welche Nebeneffekte es hat...

Jochen
 

S. Tdout
Gast





BeitragVerfasst am: 23. Feb 2003 3:55   Titel: Re: Textausgabe ohne Newline

## FILEHANDLE wählen,
select STDOUT;
## auf welchen sich die Spezialvariable
$| = 1;
## bezieht. (Ist wohl ohne Eingriffe STDOUT)

## Bei vielen Debug-Meldungen auf STDERR käme aber vielleicht
## auch mal ein Puffern in Frage:
select STDERR; $| = 0;
 

S. Tdout
Gast





BeitragVerfasst am: 23. Feb 2003 5:15   Titel: Re: Textausgabe ohne Newline

## Korrekter ist wohl, `$|' bezieht sich immer auf das Standard-File-Handle (STDIO)
## und mittels `select FILEHANDLE' wird eben jenes zum Standard. Also nach einem

select IrgendEinHandle; $| = 1;

## wieder

select STDOUT;

## Sonst landet ein `print( "Ein String" )' nicht auf STDOUT,
## sondern in IrgendEinHandle.
## Perl-Gewurschtel ##
 

S. Tdout
Gast





BeitragVerfasst am: 23. Feb 2003 5:16   Titel: Re: Textausgabe ohne Newline

STDOUT statt STDIO
 

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Programmieren - Allgemein Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy