abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

dnes 00:33 | Zajímavý článek

Správce nástroje curl Daniel Stenberg na GitHubu průběžně vytváří svou novou knihu Uncurled, v níž shrnuje své dlouhodobé zkušenosti s údržbou open-source projektu: od odpozorovaných pouček po vtipné a ne až tak vtipné příklady e-mailů od uživatelů.

Fluttershy, yay! | Komentářů: 0
dnes 00:22 | Nová verze

Byla vydána nová major verze 25.0 programovacího jazyka Erlang (Wikipedie) a související platformy OTP (Open Telecom Platform, Wikipedie). Přehled novinek v příspěvku na blogu.

Ladislav Hagara | Komentářů: 0
dnes 00:11 | Nová verze

Deno (Wikipedie), běhové prostředí (runtime) pro JavaScript a TypeScript, bylo vydáno ve verzi 1.22. Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
včera 18:22 | Nová verze

Společnost Red Hat oznámila vydání Red Hat Enterprise Linuxu (RHEL) 9.0. Vedle nových vlastností a oprav chyb přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Podrobnosti v poznámkách k vydání.

Ladislav Hagara | Komentářů: 5
včera 14:00 | Komunita

Lars Knoll oznámil, že po 25 letech v ekosystému Qt, z toho 22 let pracující pro různé společnosti vlastnící Qt, odchází ze společnosti The Qt Company do malého norského startupu.

Ladislav Hagara | Komentářů: 2
včera 13:22 | Zajímavý projekt

Na Kickstarteru běží kampaň na podporu mini ITX desky Turing Pi 2 Cluster Computer. Vložením 4 výpočetních modulů, podporovány jsou Raspberry Pi 4, Turing RK1 a Nvidia Jetson, lze získat 4uzlový cluster. Cena desky je 219 dolarů.

Ladislav Hagara | Komentářů: 2
včera 10:00 | Pozvánky

Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 198. brněnský sraz, který proběhne v pátek 20. května tradičně od 18 hodin v Pivovarské restauraci Moravia.

Ladislav Hagara | Komentářů: 2
včera 07:00 | Zajímavý software

Byla vydána nová verze 0.25 herního enginu Fyrox, původně rg3d. Přehled novinek s kódy, náhledy i videi v příspěvku na blogu.

Ladislav Hagara | Komentářů: 0
včera 00:11 | Nová verze

Multiplatformní audio přehrávač Qmmp (Wikipedie) byl vydán ve verzi 2.1.0. Z novinek lze zmínit například podporu XDG Base Directory Specification.

Ladislav Hagara | Komentářů: 0
17.5. 23:22 | Komunita

Letošní konference LibreOffice proběhne 28. září až 1. října v Bolzanu. The Document Foundation hledá přednášející.

Zdeněk Crhonek | Komentářů: 0
Na sociálních sítích nebo jiných webových diskuzích vystupuji pod
 (60%)
 (16%)
 (24%)
Celkem 276 hlasů
 Komentářů: 23, poslední včera 16:14
Rozcestník


Dotaz: Připisování do souboru a průběžné čtení

xkucf03 avatar 3.9.2020 13:52 xkucf03 | skóre: 49 | blog: xkucf03
Připisování do souboru a průběžné čtení
Přečteno: 462×

Existuje příkaz, který by periodicky (nebo přes inotify) sledoval měnící se soubor a vypisoval pouze data, která přibyla?

Tzn. něco jako tail -f, ale vypsalo by to jen nová data, nikoli posledních N řádků či bajtů.

Ve výsledku by se to mělo chovat podobně jako pojmenovaná roura (mkfifo): jeden proces zapisuje do roury a druhý z ní čte. Akorát ta zapsaná data zároveň zůstanou v souboru.

V případě, který teď zrovna řeším, by se to asi dalo nějak ohackovat, aby první proces zapisoval do skutečné roury a zároveň se nějak data zapisovala na disk a průběžně zpracovávala druhým procesem. Ale přijde mi, že nástroj popsaný výše by mohl být obecně docela užitečný.

Jestli to neexistuje, tak si to napíšu sám, nebude to těžké, jen bych nerad vymýšlel kolo.

Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes

Řešení dotazu:


Odpovědi

Řešení 1× (xkucf03 (tazatel))
3.9.2020 14:30 kaaja | skóre: 24 | blog: Sem tam něco | Podbořany, Praha
Rozbalit Rozbalit vše Re: Připisování do souboru a průběžné čtení
Nestačilo by něco jako tail -f -n 0 ? To vypisuje jenom nová data a data v souboru přeskočí. Otázka je jestli je to, co potřebujete.
xkucf03 avatar 3.9.2020 14:57 xkucf03 | skóre: 49 | blog: xkucf03
Rozbalit Rozbalit vše Re: Připisování do souboru a průběžné čtení

Díky. Tohle vypadá, že funguje přesně tak, jak potřebuji.

Zvláštní je, že v manuálové stránce ani dokumentaci jsem to nenašel.

Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
Heron avatar 3.9.2020 15:14 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: Připisování do souboru a průběžné čtení
Copak to bylo za man? Dívám se do debu i freebsd a jak GNU tak BSD verze to mají popsané.
xkucf03 avatar 3.9.2020 16:09 xkucf03 | skóre: 49 | blog: xkucf03
Rozbalit Rozbalit vše Re: Připisování do souboru a průběžné čtení

Koukal jsem na verzi GNU coreutils 8.28 a tam je jen:

       -n, --lines=[+]NUM
              output the last NUM lines, instead of the last 10; or use -n +NUM to output starting with line NUM

a v dokumentaci na webu jsem to taky neviděl.

Ale ani u FreeBSD to nemůžu najít.

Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
3.9.2020 16:20 debian+ | skóre: 30 | blog: analyzy
Rozbalit Rozbalit vše Re: Připisování do souboru a průběžné čtení
debian.plus@protonmail.com
xkucf03 avatar 3.9.2020 16:29 xkucf03 | skóre: 49 | blog: xkucf03
Rozbalit Rozbalit vše Re: Připisování do souboru a průběžné čtení

Kde se tam píše, že -n 0 má zvláštní význam?

Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
3.9.2020 16:38 debian+ | skóre: 30 | blog: analyzy
Rozbalit Rozbalit vše Re: Připisování do souboru a průběžné čtení
Heron avatar 3.9.2020 16:56 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: Připisování do souboru a průběžné čtení
Jaký zvláštní?

-n je parametr určující počet vypsaných řádků. No a 0 vypíše přesně 0 řádků. V normálním režimu to sice nemá žádný smysl ale udělá to přesně to, co se od toho očekává, tj vypíše to prázdný řádek. S follow režimem to vypíše nula stávajících řádků a začne to vypisovat další řádky. Tj chová se to podle očekávání.
3.9.2020 17:01 debian+ | skóre: 30 | blog: analyzy
Rozbalit Rozbalit vše Re: Připisování do souboru a průběžné čtení
Mysli to ako trik na take pouzitie. Moze to datdo sekcie example.
debian.plus@protonmail.com
Heron avatar 3.9.2020 17:05 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: Připisování do souboru a průběžné čtení
Jo, to by se asi dát mohlo.
xkucf03 avatar 3.9.2020 17:28 xkucf03 | skóre: 49 | blog: xkucf03
Rozbalit Rozbalit vše Re: Připisování do souboru a průběžné čtení

To je vlastně pravda. :-) To -n se vztahuje jen k historii, na vypisování nových řádků nemá vliv.

Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
3.9.2020 17:35 jiwopene | skóre: 30 | blog: Od každého trochu…
Rozbalit Rozbalit vše Re: Připisování do souboru a průběžné čtení
Pokud chcete ušetřit pár stisků klávesy, tak tail -0f funguje stejně.

tail -f (alespoň ten z GNU coreutils) umí detekovat a oznámit i smazání obsahu souboru nebo souboru samotného a potom pokračovat novým souborem ve stejné cestě. To je celkem praktické pro sledování logů v reálném čase.

tail (stejně jako head) má ještě jednu celkem praktickou funkci – když mu dáte víc názvů souborů, před každým vypíše hlavičku s názvem souboru. Pokud spustíte tail -f s více soubory, sleduje všechny soubory zároveň a před změnou každého souboru vypíše hlavičku.
.sig virus 3.2_cz: Prosím, okopírujte tento text do vaší patičky.
3.9.2020 14:47 debian+ | skóre: 30 | blog: analyzy
Rozbalit Rozbalit vše Re: Připisování do souboru a průběžné čtení
3.9.2020 21:14 PetebLazar | skóre: 29 | blog: l_eonardovo_odhodlani
Rozbalit Rozbalit vše Re: Připisování do souboru a průběžné čtení
Nestačí příkaz tee, který rozdvojí výstup do stdout a souboru?
xkucf03 avatar 3.9.2020 21:29 xkucf03 | skóre: 49 | blog: xkucf03
Rozbalit Rozbalit vše Re: Připisování do souboru a průběžné čtení

Konkrétně to potřebuji k tomuto: screen se připojí na sériový port a zobrazuje, co z něj přichází, případně umožňuje zadávat zařízení příkazy. Screen zároveň loguje do souboru – a z něj to chci číst (parsovat) průběžně jiným nástrojem. Zároveň se od toho screenu můžu odpojit a on zůstane běžet na pozadí a stále loguje.

Ten druhý nástroj si pustím, jen když to chci parsovat v reálném čase. A s tím dobře pomůže ten tail -f -n0.

Původně jsem chtěl ten nástroj napsat tak, aby se připojoval přímo na sériový port a zároveň logoval, ale vypadá to, že to nebude nutné a že to půjde poskládat z již hotových nástrojů (screentail).

Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.