[Linuxtrent] Re: Redirection, pipe e device

  • From: Guido Brugnara <gdo@xxxxxxxxx>
  • To: linuxtrent@xxxxxxxxxxxxx
  • Date: Thu, 05 Aug 2004 13:37:03 +0200

tuocomando >>tuofiledi.log &

# pi con calma

tail -f tuofiledi.log


# e ti vedi nello standard input cio che avviene e mantieni anche il file

bye
Guido






Cristiano Tomasi wrote:
Ciao a tutti

scrivo in lista a cercar cosiglio, il problema che vorrei risolvere e questo:

ho un programma (un server TCP/IP scritto in Java) che scrive sullo stadard 
output i messaggi di errore e non.
Quindi volendo creare un log di tali messaggi scrivo da shell

javaserver | tee nomefile &

quindi il server lavora in background, creo il log e posso monitorare 
visivamente anche l'attivita' guardando
i messaggi a video.

dovendo pero' far partire il server  al boot perdo la possibilita' di vedere i 
messaggi a video
allora ho pensato (si penso, poco ma penso :)) di fare una cosa di questo genere

javaserver | tee nomefile > /dev/tty5 &

cosi perdo una console (nel senso che diventa abbastanza inutilizzabile con tutti i messaggi di log che si mescolano all'input da tastiera) ma dinuovo posso monitorare l'attivita' del server visivamente.
Come soluzione mi basta e mi avanza, ma io non sono mai contento vorrei fare una cosa del tipo


javaserver | tee nomefile > "qualche device/file/o non socosa" &

al  boot di sistema
e poi da una qualsiasi shell scrivere

cat "qualche device/file/o non socosa" e controllare cosi l'attivita del server.

Ho provato con le pipe

mknod nomefile_pipe p
javaserver | tee nomefile > nomefile_pipe &
cat nomefile_pipe

funziona... MA ci sono due grossi problemi
il primo e' che devo lanciare prima il comando cat e poi il server il secondo e' che se interrompo con un control-C il comando cat mi becco un broken pipe e vien fuori un mezzo casino.


Considerate che in realta' io ho semplificato un po' le cose,
nella realta' dei fatti c'e' di mezzo un logrotate e altre bazzecole varie che 
non
vanno assolutamente d'accordo con il malefico boken pipe.

a questo punto mi chiedevo se esiste o si possa creare un device
su cui ridirezionare l'output per poi poterlo leggere da qual si voglia shell
con un cat o qualcosa del genere. Voi ne sapete qualcosa?

un saluto

Cristiano


-- Per iscriversi (o disiscriversi), basta spedire un messaggio con OGGETTO "subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxx


Other related posts: