Zobrazeni progresu

Zbynek Houska zhouska na cz.foxconn.com
Sobota Květen 17 07:15:18 MEST 2003


Dekuji za odkaz,

  nicmene mi to neda abych se neptal dal...

  Prikladam muj skriptik a zajima mne proc posledni radek neprepisuje
predchozi radek, pokud bych tam nepridal mezeru mezi uvozovky tak by tam
vzdy zbyly nejake znaky... V tomhle pripade me zrovna nic nenapada.


#!perl
#
# Tento program tiskne zadany soubor na COM ci LPT port, zalezi na  
# nastaveni.
#
# Verze 0.1
#
# Program byl vytvoren Z.Houskou
#
#
$aolp='';
$soubor=0;
print 'Jaky chcete tisknout soubor? ';
chomp ($soubor= <STDIN>); 
open (F, "<C:\\$soubor") or die 'Soubor nelze otevrit!';
open( PORT, "+>LPT1" ) 
  or die "Nemohu otevrit port pro komunikaci s tiskarnou: $!";
select(( select(PORT),$|=1)[0]);
while (print 'Kolikrat chcete soubor tisknout? '){
  chomp ($aolp =<STDIN>);
  if ($aolp gt "999")
     {print "Zadna pismena prosim, zadejte cisla od 0 do 999.\n";
      next;
      }
  if ($aolp > 999) 
     {print "Prilis velke cislo, zadejte cisla od 0 do 999.\n";
      next;
      }
  if ($aolp < 0)
      {print "To je zaporne cislo. Zadejte cisla od 0 do 999.\n";
      next;
      }
  last;
  }

while () {
  if ($aolp != 0){
    $aolp -= 1;
    print PORT slurp ("$soubor");
    sub slurp {
    my $file = shift;
    local *F;
    open F, "< $file" or die "Nemohu otevrit '$file' pro cteni: $!";
    binmode F;
    local $/ = undef;
    my $string = <F>;
    close F;
    return $string;
}

    sleep 2;
   }
  
  else {last;}
  $|=1;
  print "Zbyva vytisknout $aolp labelu";
  print "\r";
   }

print "   Tisk uspesne ukoncen!   ";

Zbynek


Další informace o konferenci Perl