[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Trasferimento file via seriale



On Friday 19 September 2008 14:56, Gianfranco Ferramosca wrote:
> Un saluto a tuta la lista!
> Devo trasferire un semplice file di testo da un dispositivo ad un pc
> tramite la porta seriale. Il pc ed il dispositivo sono collegati
> tramite un cavo nullmodem ed il protocollo utilizzato è l'Xmodem.
> La ricezione dev'essere automatica, non avviata dall'utente. Ho
> bisogno, in pratica, di una sorta di demone che resti in sacolto
> sulla seriale e che scarichi il file quando "sente" la chiamata.
> Ho scritto questo script bash:
>
> #!/bin/sh
> /usr/bin/rx --append -vvaX /home/gianfranco/file_ricevuto.dat <
> /dev/ttyS0 > /dev/ttyS0
>
> Eseguendolo da shell ed avviando la trasmissione sul dispositivo,
> nella mia home viene creato un file contenente i dati letti dalla
> seriale. Ho modificato, quindi, il file /etc/inittab prima in questo
> modo:
>
> T0:23:respawn:/sbin/getty -nL -l /home/gianfranco/ricevi.sh ttyS0
> 9600
>
> poi:
>
> T0:23:respawn:/home/gianfranco/ricevi.sh
>
> In entrambi i casi, la trasmissione termina correttamente, ma il file
> nella mia home è vuoto!
> Il file /var/log/syslog mi riporta questo:
>
> Sep 19 14:25:37 Gianfranco rx[2245]: [root] file_ricevuto.dat/XMODEM:
> 384 Bytes, 6 BPS
>
> Dal log mi sembra di capire che i dati siano stati ricevuti, ma come
> mai il file risulta vuoto?

Salve,

credo che l'opzione "--append" funzioni solo per il protocollo ZMODEM.   
Probabilmente ogni successiva istanza di "rx" apre il 
file "file_ricevuto.dat" in modalità di scrittura semplice anziché 
append così da eliminarne il contenuto.

Si potrebbe usare un nome diverso per ogni file trasmesso, ottenendo una 
sequenza di file separati che possono essere poi riorganizzati a 
posteriori dallo stesso script.

Cordiali saluti.


alfredo


Reply to: