Pagina 1 di 1

Tail con grep reindirizzando su file

Inviato: giovedì 10 maggio 2007, 19:56
da Ptah
Buon giorno a tutti.
Ho un piccolo problemino, robetta da nulla....

Da uno script shell devo fare un tail -f su un file, greppare una stringa precisa e reindirizzare l'output su un file.
La sintassi dovrebbe essere la seguente:

Codice: Seleziona tutto

tail -f standardOut.log | grep -i "stoppato con successo" >> out.log
C'è un piccolo problema....non redirige correttamente l'output, ovvero out.log non viene scritto.
I permessi sono giusti, tail e grep da soli funzionano (cioè > funziona) e il file out.log esiste. Ho provato anche con la redirezione dello standard output (tail ... grep ... 2 > out.log) e con tee (tail ... grep ... tee -a out.log) ma niente da fare...
Qualche idea??  ::) ???
Ovviamente il tail gira in background perchè lo script poi cicla alla ricerca di un parametro nella riga scritta nel out.log


Grasie a tutti

Re: Tail con grep reindirizzando su file

Inviato: giovedì 10 maggio 2007, 22:26
da paper0k
MMM.... potrebbe essere un problema di buffering... prova ad usare l'opzione --line-buffered sul grep ;)

Re: Tail con grep reindirizzando su file

Inviato: giovedì 10 maggio 2007, 22:35
da adoldo
il comando dovrebbe essere:

Codice: Seleziona tutto

tail -f standardOut.log | grep -i "stoppato con successo" 2> out.log

Re: Tail con grep reindirizzando su file

Inviato: giovedì 10 maggio 2007, 23:41
da Ptah
Arnoldo già provata quella opzione, rien a fer!
L'altra soluzione di Papero domani la provo.
(in realtà non lavoro su Linux bensì su AIX, ma da che so il grep e il tail sono standard quindi identici su ogni sistema *nix.....forse era ilc aso che ve lo dicessi  ??? )

Re: Tail con grep reindirizzando su file

Inviato: giovedì 10 maggio 2007, 23:44
da paper0k
MMM.... non so se su AIX l'opzione che ti ho indicato funzioni... controlla sul man .... :-\