[Tech] O' Perl

Franco Bagnoli bagnoli@dma.unifi.it
Gio 14 Giu 2001 13:28:30 CEST


On Thu, 14 Jun 2001, Claudio Mannucci wrote:

> 
> 
> -- 
> Claudio "Cielle" Mannucci
> http://cielle.welcome.to
> mailto:claman64@tin.it

le due linette (sigdash) sono una convenzione per indicare dove c'e' la
signature e non includerla nei reply. Se la metti all'inizio non posso
citare il tuo messaggio nel reply (senza modificare la configurazine del
mio pine) per cui se usi enable-sigdash metti la signature in fondo. 
 
> On Thu, 14 Jun 2001, Franco Bagnoli wrote:
> 
> > se ho capito bene, tralasciamo per il momento il problema di cambiare la
> > stringa, che e' banale (e puo' essere fatto con tanti sistemi, perl
> > ovviamente incluso), il tuo problema e' gestire il collegamento con la
> > seriale.
> 
> La stringa non e' un problema, la cambio _necessariamente_ a mano.
> Devo :

in perl:

#!/usr/bin/perl

<apri la comunicazione seriale> 

while (<>) {
	chomp; # elimini il \n
	s/^STOR //; # elimini STOR
 	s/$/\r\r/; # aggiungi i cr alla fine, puoi anche farlo con una 
                   #concatenazione: $_ .= "\r\r";
	emetti($_);
}
emetti("\r");

sub emetti {
	my $arg = shift;
	<fai quello che devi fare>
}

<chiudi la comunicazione>

dove poi ti devi gestire emetti con il modulo per le comunicazioni, 
oppure al posto di emetti scrivi print e ti generi il file che poi
trasmetti con expect, in questo caso il programmetto lo usi come un filtro

converti < file > out o anche converti file > out

per il colloquio, prima fatti un'idea usando minicom, poi o guardi il
modulo che ti suggerivo (mi sembrava semplice) o usi expect (che pure e'
semplice, una volta creato l'esempio si tratta solo di generare un file). 

Ciao.

-- 
Franco Bagnoli (franchino) <bagnoli@dma.unifi.it>
Dipartimento di Matematica Applicata "G. Sansone" - Universita' di Firenze
Via S. Marta, 3 I-50139 Firenze, Italy. Tel. +39 0554796422, fax: +39 055471787
GPG Key fingerprint = 169D 9EA5 8FD3 7EDA E43A  9830 255F BCEC 0D63 3728







Maggiori informazioni sulla lista flug-tech