abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 10:44 | Zajímavý článek

    Alyssa Rosenzweig se v příspěvku na svém blogu Vulkan 1.3 na M1 za 1 měsíc rozepsala o novém Vulkan 1.3 ovladači Honeykrisp pro Apple M1 splňujícím specifikaci Khronosu. Vychází z ovladače NVK pro GPU od Nvidie. V plánu je dále rozchodit DXVK a vkd3d-proton a tím pádem Direct3D, aby na Apple M1 s Asahi Linuxem běžely hry pro Microsoft Windows.

    Ladislav Hagara | Komentářů: 4
    dnes 01:00 | Nová verze

    Byla vydána (𝕏) květnová aktualizace aneb nová verze 1.90 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.90 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

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

    Byla vydána (Mastodon, 𝕏) nová verze 2024.2 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    včera 16:44 | IT novinky

    Počítačová hra Tetris slaví 40 let. Alexej Pažitnov dokončil první hratelnou verzi 6. června 1984. Mezitím vznikla celá řada variant. Například Peklo nebo Nebe. Loni měl premiéru film Tetris.

    Ladislav Hagara | Komentářů: 10
    včera 10:44 | Nová verze

    MicroPython (Wikipedie), tj. implementace Pythonu 3 optimalizovaná pro jednočipové počítače, byl vydán ve verzi 1.23.0. V přehledu novinek je vypíchnuta podpora dynamických USB zařízení nebo nové moduly openamp, tls a vfs.

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

    Canonical vydal Ubuntu Core 24. Představení na YouTube. Nová verze Ubuntu Core vychází z Ubuntu 24.04 LTS a podporována bude 12 let. Ubuntu Core je určeno pro IoT (internet věcí) a vestavěné systémy.

    Ladislav Hagara | Komentářů: 2
    včera 01:00 | Nová verze Ladislav Hagara | Komentářů: 0
    4.6. 19:55 | IT novinky

    Intel na veletrhu Computex 2024 představil (YouTube) mimo jiné procesory Lunar Lake a Xeon 6.

    Ladislav Hagara | Komentářů: 0
    4.6. 13:44 | IT novinky

    Na blogu Raspberry Pi byl představen Raspberry Pi AI Kit určený vlastníkům Raspberry Pi 5, kteří na něm chtějí experimentovat se světem neuronových sítí, umělé inteligence a strojového učení. Jedná se o spolupráci se společností Hailo. Cena AI Kitu je 70 dolarů.

    Ladislav Hagara | Komentářů: 0
    4.6. 13:22 | Nová verze

    Byla vydána nová verze 14.1 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    Rozcestník

    Dotaz: nefunguje stdout z tail

    2.4.2014 23:17 nowis
    nefunguje stdout z tail
    Přečteno: 306×

    omlouvám se za asi začátečnický dotaz, ale nevím, jak to rychle najít…

    tail -f /var/log/maillog | grep Subject
    - to funguje bez problémů

    chci to ale ukládat do souboru:
    tail -f /var/log/maillog | grep Subject > /var/log/vsechnymaily.csv

    A neukládá to nic, čím to?

    Díky

    Odpovědi

    2.4.2014 23:29 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: nefunguje stdout z tail
    Příčiny mohou být jen 2. Jednak to, co vám běží na obrazovku a chcete přesměrovat nejde ze STDOUT, ale STDERR, pak výstup běží na obrazovku dále, a nic se nepřesměruje, nebo nemáte write práva do cílového souboru. Fakticky v popsaném případě nepřesměrováváte tail, ale grep. STDOUT pro tail je do STDIN grep.
    2.4.2014 23:37 nowis
    Rozbalit Rozbalit vše Re: nefunguje stdout z tail
    díky, za odpověď.

    1. úplně nerozumím. Pokud jde správný výsledek na obrazovku tak pouhým přidáním > soubor se to bude ukládat do souboru, ne?

    2. jsem přihlášený jako root, takže právy to nejspíše nebude
    3.4.2014 00:00 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: nefunguje stdout z tail
    Ten důvod je ještě jinde. Vy použijete tail -f , což znamená, že se proudy nezavřou a jsou otevřené do nekonečna. Přesměrování do souboru způsobí otevření write do souboru, ale nemáte žádné uzavření, tím pádem výstup do souboru zůstane viset ve write bufferu cilového souboru dokud mu nepošlete sync (což mu nepošlete asi nikdy) nebo neuplynou timeouty file systému pro zápis. Efektivně se přesměrování do souboru dá používat jen pro ukončenou akci.
    3.4.2014 00:04 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: nefunguje stdout z tail
    Třeba pokud nedáte jen ten naprostý konec 10 řádků, ale pošlete více např. tail -f -n 10000 tak se něco zapíše.
    KrisKo avatar 3.4.2014 08:42 KrisKo | skóre: 20
    Rozbalit Rozbalit vše Re: nefunguje stdout z tail
    jedno z rieseni je vyuzit fifo buffer:
    mkfifo fifo
    tail -f /var/log/maillog > fifo
    while read a; do echo $a | grep Subject >> /var/log/vsechnymaily.csv; done <fifo
    
    nevyhodou je ze musia bezat 2 prikazy.
    https://krisko210.blogspot.com
    3.4.2014 08:52 R
    Rozbalit Rozbalit vše Re: nefunguje stdout z tail
    Ono to funguje, ale zapise sa to az ked sa zaplni buffer. Riesenie:
    tail -f /var/log/maillog | stdbuf -o 0 grep Subject > /var/log/vsechnymaily.csv
    
    Tarmaq avatar 3.4.2014 09:26 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: nefunguje stdout z tail
    Tohle by taky mohlo resit dany problem ..
    tail -f /var/log/maillog | grep Subject | tee /var/log/vsechnymaily.csv > /dev/null
    Don't panic!
    3.4.2014 15:42 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: nefunguje stdout z tail
    Tohle asi dopadne stejně. tee píše do souboru, ale zůstává to v bufferu, protože kanál není uzavřen.
    3.4.2014 13:50 nowis
    Rozbalit Rozbalit vše Re: nefunguje stdout z tail

    Pánové díky za rady! Napadlo mně, že by to mohlo být v tom neuzavřeném souboru, ale stejně tak to mohlo být spoustou jiných věcí, takže jsem rád, že jste se tomu věnovali.
    Zkoušel jsem všechny způsoby. Funguje ale jen ten první, dvoupříkazový.

    Tento způsob: tail -f /var/log/maillog | stdbuf -o 0 grep Subject > /var/log/vsechnymaily.csv
    vrátí -bash: stdbuf: command not found

    Tento způsob: tail -f /var/log/maillog | grep Subject | tee /var/log/vsechnymaily.csv > /dev/null
    nic nevrátí, ale ani nic nezapisuje

    raději bych používal jednopříkazový způsob, pokud by to šlo. Mohl bych Vás ještě poprosit o pomoc?

    3.4.2014 14:08 pet
    Rozbalit Rozbalit vše Re: nefunguje stdout z tail
    stdbuf by měl být součástí balíčku coreutils. Takže doinstalivat.
    3.4.2014 16:08 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: nefunguje stdout z tail
    Lepší by bylo nám napsat, co vlastně chcete dosáhnout. tail -t si dokážu představi, že si ho spustím interaktivně zjistím, co se děje a nechám vypisuje mi i aktuální změnu. Ale proč takhle a co je cílem, moc nechápu. Pokud chcete mít paralelení vyfiltrovaný soubor, tak otázka je jak přesně aktuální, nebo co se s ním bude dít dále.
    3.4.2014 17:34 pavele
    Rozbalit Rozbalit vše Re: nefunguje stdout z tail
    >> :-)

    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.