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

    Desktopové prostředí LXQt (Lightweight Qt Desktop Environment, Wikipedie) vzniklé sloučením projektů Razor-qt a LXDE bylo vydáno ve verzi 2.5.0. Přehled novinek v poznámkách k vydání.

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

    Byla vydána (𝕏) nová verze 8.0 LTS open source monitorovacího systému Zabbix (Wikipedie). Přehled novinek v oznámení na webu, v poznámkách k vydání a v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Nová verze

    Byla vydána verze R14.1.7 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.

    JZD | Komentářů: 3
    dnes 00:33 | Nová verze

    Bazzite (Wikipedie), tj. linuxová distribuce vycházející z Fedora Linuxu a optimalizována pro hraní počítačových her, byla vydána ve verzi 45. S Open Gaming Collective (OGC) jádrem a novým Easy Anti-Cheatem pro Linux (EAC Linux v2).

    Ladislav Hagara | Komentářů: 0
    včera 22:11 | Bezpečnostní upozornění

    MikroTik zveřejnil vlastní bezpečnostní upozornění potvrzující, že zranitelnost linuxového jádra postihuje také RouterOS 7. Jde o use-after-free při zpracování IPv4 TCP spojení s IP options. Zranitelnost se týká provozu směřujícího na TCP službu samotného routeru, nikoli paketů, které router pouze přeposílá. Opraveno v long-term od 7.24.6, v stable od 7.25.1 a devel od 7.26beta5.

    vencour | Komentářů: 0
    včera 17:00 | Bezpečnostní upozornění

    Ve správci balíčků APT, používaném v Debianu a odvozených distribucích, byla nalezena a opravena kritická zranitelnost CVE-2026-109518. Vzdálený útočník může obejít ověření stažených balíčků pomocí přesměrování a dočasných chyb HTTP serveru.

    Ladislav Hagara | Komentářů: 1
    včera 13:11 | IT novinky

    Nejvyšší kontrolní úřad (NKÚ) vydal zprávu o finančním řízení prostředků EU v ČR (pdf). Dočíst se lze například, že přes 8 miliard korun na digitální vzdělávání nepřineslo naplnění žádného z prioritních cílů programu. Peněžní prostředky z fondů EU sice byly vynaloženy formálně v souladu s právními předpisy, avšak s minimálním nebo neprokazatelným dopadem na proklamované cíle ve vzdělávání. Na Metodickém portálu RVP.CZ bylo ke konci

    … více »
    Ladislav Hagara | Komentářů: 20
    včera 11:33 | Nová verze

    Emulátor terminálu kitty (Wikipedie, GitHub) byl vydán v nové verzi 0.50.

    Ladislav Hagara | Komentářů: 3
    včera 09:00 | Bezpečnostní upozornění

    Vývojáři C-Kermit oznámili několik dlouhodobě přítomných zranitelností. Patří mezi ně buffer overflow v Telnet/FTP klientovi a command injection v Kermit serveru. Dotčené verze: C-Kermit 11.0.514 a starší. Fix: 11.1.515 [oss-security].

    vencour | Komentářů: 0
    včera 02:44 | Nová verze

    Byla vydána nová verze 3.2.8 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2982 hlasů
     Komentářů: 34, poslední 26.10. 08:24
    Rozcestník

    Dotaz: Cyklus While - čtení dat z /dev/ttyUSB

    Petr Maleček avatar 19.1.2014 20:02 Petr Maleček | skóre: 29 | Plzeň - Bolevec
    Cyklus While - čtení dat z /dev/ttyUSB
    Přečteno: 522×

    Ahoj, mám tu problém. Z USB teploměru získávám data o teplotě (ASCII), občas se stane, že teploměr na první dotaz neodpoví, tak bych chtěl, aby se v případě nulového výstupu dotaz na data zopakoval.

    Výstup z USB zařízení vypadá takto:

    *B1E1+019.7

    Kde *B1E1 se nemění, mění se až data za ním (znaménko a čísla).

    
    #!/bin/bash
    TEMPREAD=(`head -1 /dev/ttyUSB0`); # | cut -c6-11`);
    
            while [ $TEMPREAD == *"B1E1"* ]; do
                    echo $TEMPREAD;
            done
    
    
    

    Zatím jsem chtěl pouze nechat vypisovat vrácená data a aby se script ukončil v případě, že data nebudou k dispozici. Ovšem nechápu, proč se data nevypíšou ani jednou? Co mám v tom cyklu špatně?

    Díky :-)
    LinMuck, WinFuck :-P

    Řešení dotazu:


    Odpovědi

    19.1.2014 21:27 li737 | skóre: 6
    Rozbalit Rozbalit vše Re: Cyklus While - čtení dat z /dev/ttyUSB
    ze zařízení se čte jen jednou na začátku. Je potřeba dat to do cyklu.
    Petr Maleček avatar 19.1.2014 21:55 Petr Maleček | skóre: 29 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: Cyklus While - čtení dat z /dev/ttyUSB
    Ano, i kdyby se četlo ze zařízení jen jednou, tak by snad jednou ten cyklus proběhl, ne? :-)
    LinMuck, WinFuck :-P
    19.1.2014 22:07 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Cyklus While - čtení dat z /dev/ttyUSB
    Ano jednou se načte a proč by to mělo něco vypsat když to přečte třeba bflmps ?

    Či to přečte bílé znaky a podobně...
    19.1.2014 22:43 li737 | skóre: 6
    Rozbalit Rozbalit vše Re: Cyklus While - čtení dat z /dev/ttyUSB
    když nebude splněna podmínka tak cyklus neproběhne ani jednou. Jinak aby ta podmínka fungovala tak je potřeba zdvojit závorku [[
    Petr Maleček avatar 20.1.2014 01:19 Petr Maleček | skóre: 29 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: Cyklus While - čtení dat z /dev/ttyUSB
    Tak chyba byla v té zdvojené závorce, což jsem úplně přehlédl. Díky, už mi to funguje :-)
    
    #!/bin/bash
    TEMPREAD=(`head -1 /dev/ttyUSB0`); # | cut -c6-11`);
    
            while [[ "$TEMPREAD" != *"B1E1"* ]]; do
                    # READ DATA AGAIN
                    TEMPREAD=(`head -1 /dev/ttyUSB0`);
                    # echo $TEMPREAD
            done
    
            # FORMAT OUTPUT
            TEMPREAD=(`echo $TEMPREAD | cut -c6-11`);
            # echo $TEMPREAD;
    
    # WRITE DATA TO SQL
    sqlite3 /root/meteo-temp1.sqlite "INSERT INTO 'meteo-temp1' ('datum', 'teplota') VALUES (DATETIME('now', 'localtime'), '$GETTEMP0');"
    
    LinMuck, WinFuck :-P
    Petr Maleček avatar 20.1.2014 01:21 Petr Maleček | skóre: 29 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: Cyklus While - čtení dat z /dev/ttyUSB
    Pardon, místo $GETTEMP0 má být $TEMPREAD
    LinMuck, WinFuck :-P

    Založit nové vlákno • Nahoru

    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.