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 05:11 | Nová verze

    Organizace Apache Software Foundation (ASF) vydala verzi 30 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.

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

    Byla vydána nová verze 7.0 svobodného open source redakčního systému WordPress. Kódové jméno Armstrong bylo vybráno na počest amerického jazzového trumpetisty a zpěváka Louise Armstronga (What A Wonderful World).

    Ladislav Hagara | Komentářů: 0
    dnes 04:55 | Bezpečnostní upozornění

    V Drupalu byla nalezena a opravena kritická zranitelnost SA-CORE-2026-004 (CVE-2026-9082). Útočník může provádět libovolné SQL dotazy na webech používajících databázi PostgreSQL.

    Ladislav Hagara | Komentářů: 0
    včera 14:11 | Komunita

    Richard Hughes oznámil, že službu Linux Vendor Firmware Service (LVFS) umožňující aktualizovat firmware zařízení na počítačích s Linuxem, nově sponzoruje také společnost HP.

    Ladislav Hagara | Komentářů: 3
    včera 13:33 | IT novinky

    O víkendu proběhla demopárty Outline 2026. Publikována byla prezentovaná dema. Upozornit lze na 16 bajtové, opravdu šestnáct bajtové, zvukově obrazové demo Wake Up! 16b (YouTube).

    Ladislav Hagara | Komentářů: 2
    včera 04:22 | Nová verze

    Byla vydána nová verze 9.5 multiplatformní digitální pracovní stanice pro práci s audiem (DAW) Ardour. Přehled novinek, vylepšení a oprav v poznámkách k vydání a na YouTube.

    Ladislav Hagara | Komentářů: 0
    19.5. 21:00 | IT novinky

    Dnes a zítra probíhá vývojářská konference Google I/O 2026. Sledovat lze na YouTube a na síti 𝕏 (#GoogleIO).

    Ladislav Hagara | Komentářů: 0
    19.5. 19:00 | Nová verze

    Canonical vydal Ubuntu Core 26. Vychází z Ubuntu 26.04 LTS a podporováno bude 15 let. Ubuntu Core je minimální neměnný operační systém určený pro vestavěné systémy.

    Ladislav Hagara | Komentářů: 0
    19.5. 16:22 | Nová verze

    Bylo vydáno OpenBSD 7.9. Po dlouhé době opět se songem: Diamond in the Rough.

    Ladislav Hagara | Komentářů: 0
    19.5. 16:00 | Nová verze

    Byl vydán Mozilla Firefox 151.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 151 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (13%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (7%)
     (3%)
     (16%)
     (26%)
    Celkem 1672 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: Bufferovai vystupu python skriptu

    12.6.2009 00:06 Karel Ovesny
    Bufferovai vystupu python skriptu
    Přečteno: 198×

    Dobry den, mam skript v pythonu, ktery vypisuje v pravidelnych intervalech urcite informace. Vystup skriptu presmeruji do souboru:

    ./script > output.txt

    Soubor se vsak neaktualizuje hned, ale postupne se bufferuje po 4096 bajtech. Ja potrebuji tuto vlastnost vypnout. Vygooglil jsem si parametr -u. Kdyz spustim skript takto:

     python -u script > output.txt

    Tak pak vse funguje jak ma. Jenze takto ten skript nechci spoustet, proto jsem zkusil neco takoveho pridat na zacatek skriptu:

    #!/usr/bin/env python -u

    Jenze to pri spusteni rika:

    /usr/bin/env: python -u: No such file or directory
    

    Jeste jsem zkousel nastavit promennou PYTHONUNBUFFERED, ale take bezuspesne. Vim, ze mohu po kazde stdout operaci volat flush, ale to se mi nezda jako ciste reseni. Muzete mi prosim poradit?

    Odpovědi

    Fuky avatar 12.6.2009 09:45 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: Bufferovai vystupu python skriptu
    #!/usr/bin/python -u
    
    12.6.2009 11:11 Karel Ovesny
    Rozbalit Rozbalit vše Re: Bufferovai vystupu python skriptu

    Dekuji, toto funguje, jenze ruzne distribuce mohou mit interpret umisteny jinde a pak nastane problem s prenositelnosti skriptu.

    Fuky avatar 12.6.2009 13:04 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: Bufferovai vystupu python skriptu

    Tuším, že v Linuxových distribucích by to neměl být problém, pokud Ti to vadí, tak použij wrapper. Každopádně /usr/bin/env je sice z balíčku coreutils, ale mimo Linuxový svět Ti zase nic nezaručí, že env opravdu bude na uvedené cestě. Potom se navíc musí ošetřit spouštění správné verze Pythonu a dostupnost modulů, které skript využívá. Takže /usr/bin/env oproti /usr/bin/python si mohou směle podat ruce, protože existují zásadnější problémy.

    BTW: Možná Tě bude zajímat diskuze: #!/usr/bin/env python vs. #!/usr/bin/python.

    Fuky avatar 12.6.2009 10:24 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: Bufferovai vystupu python skriptu
    12.6.2009 11:12 Karel Ovesny
    Rozbalit Rozbalit vše Re: Bufferovai vystupu python skriptu

    Vycetl jsem z toho dobre, ze na Linuxu to pres env nepujde? Nebo je tam i reseni, ktere jsem prehlidnul?

    Fuky avatar 12.6.2009 11:49 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: Bufferovai vystupu python skriptu
    Ano, také si myslím, že to na Linuxu pomocí env nepůjde.
    Fuky avatar 12.6.2009 11:56 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: Bufferovai vystupu python skriptu

    Případně existují ještě jiná řešení než je argument -u: Python output buffering:

    # reopen stdout file descriptor with write mode
    # and 0 as the buffer size (unbuffered)
    sys.stdout = os.fdopen(sys.stdout.fileno(), 'w', 0)
    

    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.