Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.

Autor Téma: Zpracování datového proudu [vyřešeno]  (Přečteno 1243 krát)

jenikosft

  • Člen
  • **
  • Příspěvků: 173
    • Zobrazit profil
Zpracování datového proudu [vyřešeno]
« kdy: 14 Duben 2011, 11:11:46 »
Ahoj, potřebuji zpacovávat proud dat, tak aby se můj script spustil pokaždé když v něm něco přibide...
Vypadá to asi takhle
Kód: [Vybrat]
cat /cesta/ke/streamu | grep neco | muj script když je ale obsah mého scriptu
Kód: [Vybrat]
echo "Neco pribylo", tak bych chtěl aby se pokaždé když něco přibyde vytisklo - "Neco pribilo" - jak na to?
« Poslední změna: 14 Duben 2011, 13:08:42 od Martin - ViPEr*CZ* »

daysleeper

  • Závislák
  • ****
  • Příspěvků: 1206
    • Zobrazit profil
Re: Zpracování datového proudu
« Odpověď #1 kdy: 14 Duben 2011, 12:01:12 »
?
Kód: [Vybrat]
tail -f stream | while read foo; do echo neco pribylo; done

jenikosft

  • Člen
  • **
  • Příspěvků: 173
    • Zobrazit profil
Re: Zpracování datového proudu
« Odpověď #2 kdy: 14 Duben 2011, 13:07:12 »
tvrďácký, dík moc...

jenikosft

  • Člen
  • **
  • Příspěvků: 173
    • Zobrazit profil
Re: Zpracování datového proudu [vyřešeno]
« Odpověď #3 kdy: 14 Duben 2011, 13:24:28 »
Mužu se zeptat, jak teda vypíšu, to co přibilo?

MacHala

  • Závislák
  • ****
  • Příspěvků: 1104
  • Big Bro iz watching joo!
    • Zobrazit profil
    • ZlejT
Re: Zpracování datového proudu [vyřešeno]
« Odpověď #4 kdy: 14 Duben 2011, 14:06:14 »
spis pribylo, ne?
Kód: [Vybrat]
tail -f stream | while read foo; do echo tohle je hlavni smycka zpracovavajiciho programu; echo $foo ; echo 'za $foo se dosadil precteny radek ze streamu'; done
Prislusnik ligy, za kreativni pouzivani interpunkcnich znamenek, carek, predevsim.
=======================================
Tweetuju jako http://twitter.com/zl8

jenikosft

  • Člen
  • **
  • Příspěvků: 173
    • Zobrazit profil
Re: Zpracování datového proudu [vyřešeno]
« Odpověď #5 kdy: 15 Duben 2011, 11:29:15 »
tak aby toho nebylo málo, stream mi teče z programu a když dám
Kód: [Vybrat]
program | while read foo; do echo tohle je hlavni smycka zpracovavajiciho programu; echo $foo ; echo 'za $foo se dosadil precteny radek ze streamu'; donetak to sice nakonec vyteče ale až za nějakou dobu a všechno pohromadě, když si pustím jen program tak ty srandy přibývají mnohem rychleji... čím to?
« Poslední změna: 15 Duben 2011, 12:26:53 od jenikosft »

MacHala

  • Závislák
  • ****
  • Příspěvků: 1104
  • Big Bro iz watching joo!
    • Zobrazit profil
    • ZlejT
Re: Zpracování datového proudu [vyřešeno]
« Odpověď #6 kdy: 15 Duben 2011, 17:53:58 »
ocividne tam bude buffer...

doporucuji precist
http://www.pixelbeat.org/programming/stdio_buffering/
http://www.groupsrv.com/linux/about160147.html

necetl jsem to sam cele (ale na prvni pohled jsem na to nenarazil), castecne jde ovlivnit buffer pipeliny i pomoci
Kód: [Vybrat]
ulimit -p
Prislusnik ligy, za kreativni pouzivani interpunkcnich znamenek, carek, predevsim.
=======================================
Tweetuju jako http://twitter.com/zl8