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 12:33 | Nová verze

    Vývojáři KDE na Mastodonu oznámili vydání balíku aplikací KDE Gear 26.08. Přehled novinek i s náhledy a videi v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    dnes 04:11 | IT novinky

    Společnost PINE64 kvůli nedostatku a vysokým cenám DRAM a eMMC dočasně pozastavuje výrobu linuxových zařízení. Výroba zařízení jako PineTime, PineVoice a Pinecil pokračuje.

    Ladislav Hagara | Komentářů: 0
    dnes 02:55 | IT novinky

    Společnost Stripe se dohodla na akvizici společnosti OpenRouter. Za 7,5 miliardy dolarů.

    Ladislav Hagara | Komentářů: 0
    dnes 01:33 | Nová verze

    Byla vydána nová verze 1.27 programovacího jazyka Go (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 16:00 | Pozvánky

    V pátek 28. srpna se v Praze uskuteční již osmý Mobile Linux Hackday. Jako obvykle se potkáme v pražské pobočce SUSE v Karlíně na Křižíkově, takže kromě mobilního Linuxu je to tentokrát i příležitost přijít se podívat na nově zrekonstruované kanceláře. Začínáme v 10:00, ale dorazit můžete samozřejmě kdykoliv v průběhu dne. Setkáním vás provede David Heidelberg, vývojář GPU ovladačů v Mesa 3D a jeden z hlavních lidí české komunity kolem … více »

    lkocman | Komentářů: 0
    včera 14:11 | IT novinky

    Představen byl Raspberry Pi Compute Module 5 Programming Jig. Jedná se o zařízení umožňující připravit Compute Module 5 do plně funkčního stavu bez nutnosti použití dalších vstupně / výstupních desek. Podporuje automatizaci pomocí nástroje rpi-sb-provisioner. Podrobnosti v dokumentaci.

    Ladislav Hagara | Komentářů: 1
    včera 05:55 | IT novinky

    Hackeři ve Francii ukradli data více než půl milionu daňových poplatníků. Je to jeden z největších hackerských útoků v dějinách země. O útoku z konce června informovala až teď daňová správa. Teprve od pondělí dotčeným občanům zasílá e-maily s instrukcemi, jak postupovat dál. Hackeři se sice nedostanou k penězům dotyčných, hrozí ale věrohodné podvody. Hackeři získali třeba celá jména, údaje o rodinných příslušnících nebo také údaje o

    … více »
    Ladislav Hagara | Komentářů: 19
    včera 04:44 | IT novinky

    Společnost Framework představila nový Framework Laptop 12 s Intel Core Series 3, Thunderbolt 4, Wi-Fi 7, volitelnou čtečkou otisků prstů a podsvícenou klávesnicí s open-source firmwarem ZMK. Objednat lze s předinstalovanou Fedorou 44 KDE Plasma.

    Ladislav Hagara | Komentářů: 0
    18.8. 16:44 | Nová verze

    Byl vydán Mozilla Firefox 154.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 154 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    18.8. 14:33 | Nová verze

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 168 (pdf).

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (19%)
     (30%)
     (7%)
     (6%)
     (2%)
     (15%)
     (22%)
    Celkem 2444 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Dotaz: Bufferovai vystupu python skriptu

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

    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.