[Linuxtrent] Redirection, pipe e device

  • From: Cristiano Tomasi <ctomasi@xxxxxxxxxxx>
  • To: linuxtrent@xxxxxxxxxxxxx
  • Date: Thu, 5 Aug 2004 20:27:07 +0900

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: