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

    Byl vydán Mozilla Firefox 126.0. Přehled novinek v poznámkách k vydání, poznámkách k vydání pro firmy a na stránce věnované vývojářům. Vylepšena byla funkce "Zkopírovat odkaz bez sledovacích prvků". Přidána byla podpora zstd (Zstandard). Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 126 je již k dispozici také na Flathubu a Snapcraftu.

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

    Grafana (Wikipedie), tj. open source nástroj pro vizualizaci různých metrik a s ní související dotazování, upozorňování a lepší porozumění, byla vydána ve verzi 11.0. Přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    dnes 14:55 | Nová verze

    Byla vydána nová verze 24.0 linuxové distribuce Manjaro (Wikipedie). Její kódové jméno je Wynsdey. Ke stažení je v edicích GNOME, KDE PLASMA a XFCE.

    Ladislav Hagara | Komentářů: 2
    dnes 13:00 | Nová verze

    Byla představena oficiální rozšiřující deska Raspberry Pi M.2 HAT+ pro připojování M.2 periferii jako jsou NVMe disky a AI akcelerátory k Raspberry Pi 5. Cena je 12 dolarů.

    Ladislav Hagara | Komentářů: 2
    dnes 12:44 | Pozvánky

    V Praze o víkendu proběhla bastlířská událost roku - výstava Maker Fair v Praze. I strahovští bastlíři nelenili a bastly ostatních prozkoumali. Přijďte si proto i vy na Virtuální Bastlírnu popovídat, co Vás nejvíce zaujalo a jaké projekty jste si přinesli! Samozřejmě, nejen českou bastlířskou scénou je člověk živ - takže co se stalo ve světě a o čem mohou strahováci něco říct? Smutnou zprávou může být to, že provozovatel Sigfoxu jde do

    … více »
    bkralik | Komentářů: 0
    dnes 12:33 | Humor

    Kam asi vede IllllIllIIl.llIlI.lI? Zkracovač URL llIlI.lI.

    Ladislav Hagara | Komentářů: 1
    včera 22:00 | IT novinky

    Společnost OpenAI představila svůj nejnovější AI model GPT-4o (o jako omni, tj. vše). Nově také "vidí" a "slyší". Videoukázky na 𝕏 nebo YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 15:44 | Zajímavý článek

    Ondřej Filip publikoval reportáž z ceremonie podpisu kořenové zóny DNS. Zhlédnout lze také jeho nedávnou přednášku Jak se podepisuje kořenová zóna Internetu v rámci cyklu Fyzikální čtvrtky FEL ČVUT.

    Ladislav Hagara | Komentářů: 0
    včera 14:22 | IT novinky

    Společnost BenQ uvádí na trh novou řadu monitorů RD určenou pro programátory. První z nich je RD240Q.

    Ladislav Hagara | Komentářů: 20
    včera 13:00 | IT novinky

    Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem nadále zůstává Frontier od HPE (Cray) s výkonem 1,206 exaFLOPS. Druhá Aurora má oproti loňsku přibližně dvojnásobný počet jader a dvojnásobný výkon: 1,012 exaFLOPS. Novým počítačem v první desítce je na 6. místě Alps. Novým českým počítačem v TOP500 je na 112. místě C24 ve Škoda Auto v Mladé Boleslavi. Ostravská Karolina, GPU

    … více »
    Ladislav Hagara | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (73%)
     (6%)
     (11%)
     (11%)
    Celkem 251 hlasů
     Komentářů: 16, poslední dnes 11:05
    Rozcestník

    Dotaz: Je vstup číslo nebo *?

    14.5.2011 11:24 Pepa
    Je vstup číslo nebo *?
    Přečteno: 369×
    Ahoj, řeším problém. chtěl bych ošetřit, zda je vstup číslo nebo znak *... Hledal jsem a téměř vše ,co jsem našel mi nešlo

    Tohle jsem našel tu, nefunguje:
    [[ ${vstup} =~ "^[+-]?[0-9]+$" ]] && echo "$vstup je cislo" || echo "$vstup neni cislo"
    Vůbec to ošetření vstupu ,zda je číslo...
    if [ "$value" -gt "0" -a "$value" -lt "23" ] || [ "$value" = "*" ]; then,
    tohle mi funguje, ale v připadě stringu to sice vyhodnotí správně, ale vyhodí to chybu ilegall number.. co stím?Díky

    Odpovědi

    Jakub Lucký avatar 14.5.2011 11:33 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    if [ "$value" = "*" ] || [ "$value" -gt "0" -a "$value" -lt "23" ];then ...

    Tohle v Bashi funguje bez problémů...
    If you understand, things are just as they are; if you do not understand, things are just as they are.
    14.5.2011 11:51 Pepa
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    ano, ale cokoliv jiného, než to vypíše
    [: 25: Illegal number:
    14.5.2011 12:16 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    Co konkrétně jste zkoušel?
    Jakub Lucký avatar 14.5.2011 15:01 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    No, já myslel spojit oba dva řádky, co tam máte, tedy:
    if [[ ${vstup} =~ "^[+-]?[0-9*]+$" ]];then
        if [ "$value" = "*" ] || [ "$value" -gt "0" -a "$value" -lt "23" ];then
            echo "Vstup OK"
    fi;
    
    Ale myslím, že níže vám někdo nabídne lepší řešení...
    If you understand, things are just as they are; if you do not understand, things are just as they are.
    15.5.2011 12:34 Pepa
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    Konkrétně tohle
    if [[ ${vstup} =~ "^[+-]?[0-9*]+$" ]];then
    mi nefunguje,netuším proč
    14.5.2011 12:03 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?

    Případně rovnou

      if [ "$value" = "*" -o "$value" -gt "0" -a "$value" -lt "23" ]; then
    
    15.5.2011 14:29 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    V bash 4.1.9(2)) mi to hází chybu, připadá mi že mu při vyhodnocování vadí fakt, že by byla hodnota mohla být číslo (ke kterému se váží -gt a -lt) i řetězec (porovnávaný =). Novější [[ ]] fungují.
    bash$ value=*
    bash$ echo "$value"
    *
    
    bash$ if [ "$value" = "*" -o "$value" -gt "0" -a "$value" -lt "23" ]; then echo ok; fi
    bash: [: *: integer expression expected
    
    bash$ if [[ "$value" = "*" || "$value" -gt "0" || "$value" -lt "23" ]]; then echo ok; fi
    bash$ ok
    
    bash$ if [ "$value" = "*" ]; then echo ok; elif [ "$value" -gt "0" -a "$value" -lt "23" ]; then echo ok; fi;
    ok
    
    
    Bilbo avatar 14.5.2011 13:15 Bilbo | skóre: 29
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    Nemělo by to "*" být v jednoduchých uvozovkách? Takhle to může bash expandovat na seznam všech souborů v aktuálním adresáři :)

    Nějak takhle: if [ "$value" = '*' ] || [ "$value" -gt "0" -a "$value" -lt "23" ];then ...
    Big brother is not watching you anymore. Big Brother is telling you how to live...
    14.5.2011 14:21 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    Nemusí. Nemůže.
    14.5.2011 12:15 Miklik | skóre: 27 | Krnov
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    Mně toto funguje

    [user@srv ~]$ if [[ 2443 =~ ^[0-9]+$ ]]; then echo OK; else echo NO; fi
    OK
    [user@srv ~]$ if [[ 2A443 =~ ^[0-9]+$ ]]; then echo OK; else echo NO; fi
    NO
    Netvrdím to, ale možná je to pravda.
    14.5.2011 12:26 Miklik | skóre: 27 | Krnov
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    Případně i toto

    if [[ 2443 =~ ^[+-]?[0-9]+$ ]]; then echo OK; else echo NO; fi
    Netvrdím to, ale možná je to pravda.
    David Watzke avatar 14.5.2011 12:27 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    Tak si ten regex zkus dát do uvozovek. Problém je, že v jedný verzi bashe to šlo dobře a pak se to chování zase změnilo. Je to pěkně na hlavu...
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    14.5.2011 12:32 Miklik | skóre: 27 | Krnov
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    [user@srv ~]$ bash -version
    GNU bash, version 3.00.15(1)-release (i686-redhat-linux-gnu)
    Copyright (C) 2004 Free Software Foundation, Inc.
    [user@srv ~]$ if [[ 2443 =~ "^[+-]?[0-9]+$" ]]; then echo OK; else echo NO; fi
    OK
    [user@srv ~]$ if [[ 24A43 =~ "^[+-]?[0-9]+$" ]]; then echo OK; else echo NO; fi
    NO


    No tak nevím, mě to funguje s uvozovkama i bez.
    Netvrdím to, ale možná je to pravda.
    David Watzke avatar 14.5.2011 13:21 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    Právě proto, že máš pravěkou verzi Bashe, ve který to ještě šlo.
    dave@amd64 ~ $ if [[ 2443 =~ ^[0-9]+$ ]]; then echo OK; else echo NO; fi
    OK
    dave@amd64 ~ $ if [[ 2443 =~ "^[0-9]+$" ]]; then echo OK; else echo NO; fi
    NO
    dave@amd64 ~ $ bash --version
    GNU bash, verze 4.2.10(2)-release (x86_64-unknown-linux-gnu)
    Copyright (C) 2011 Free Software Foundation, Inc.
    Licence GPLv3+: GNU GPL verze 3 nebo novější <http://gnu.org/licenses/gpl.html>
    
    Toto je svobodné programové vybavení: máte právo jej měnit a šířit.
    VEŠKERÉ ZÁRUKY chybí, jak jen zákon dovoluje.
    Myslím, že se to podělalo ve verzi 3.1 nebo 3.2.
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    14.5.2011 13:58 Pepa
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    funguje, ale nechápu ten výraz, jak to zapsat tak, aby to bralo včetně "*" .Díky
    14.5.2011 14:04 Pepa
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    ne, tak zpět, v terminálu funguje, ve scriptu ne
    14.5.2011 14:08 Pepa
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    GNU bash, verze 4.1.5(1)-release (x86_64-pc-linux-gnu)
    Copyright © 2009 Free Software Foundation, Inc.
    Licence GPLv3+: GNU GPL verze 3 nebo novější http://gnu.org/licenses/gpl.html
    
    Toto je svobodné programové vybavení: máte právo jej měnit a šířit.
    VEŠKERÉ ZÁRUKY chybí, jak jen zákon dovoluje.
    
    David Watzke avatar 14.5.2011 14:22 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    Určitě to není nějakým překlepem?
    dave@amd64 /tmp $ if [[ 2443 =~ ^[0-9]+$ ]]; then echo OK; else echo NO; fi
    OK
    dave@amd64 /tmp $ echo 'if [[ 2443 =~ ^[0-9]+$ ]]; then echo OK; else echo NO; fi' > x
    dave@amd64 /tmp $ bash x
    OK
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    14.5.2011 14:40 Pepa
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    read value
    			if [[ $value =~ ^[0-9]+$ ]]; then
    				echo true
    			else
                                    echo false
    			fi
    19: [[: not found
    David Watzke avatar 14.5.2011 14:51 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    Tak to nechápu, protože tohle mi funguje správně jak v terminálu, tak ve skriptu.
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    Jakub Lucký avatar 14.5.2011 15:02 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    Nepoužíváte náhodou ve skriptu /bin/sh, který je nalinkovaný jinam, než je /bin/bash ?
    If you understand, things are just as they are; if you do not understand, things are just as they are.
    14.5.2011 15:15 Pepa
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    Nevím, co tím myslíte, používám Ubuntu, default, nic zásadního jsem neměnil
    David Watzke avatar 14.5.2011 15:42 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    Jako první řádek ve skriptu uveďte #!/bin/bash, přidejte mu právo ke spuštění (chmod +x skript) a spusťte jej (./skript).
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    frEon avatar 15.5.2011 16:32 frEon | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Je vstup číslo nebo *?
    ahoj, jestli je $value cislo otestujes treba takto:
    kleptor@aine:/tmp$ value=666
    kleptor@aine:/tmp$ expr 1 + $value &> /dev/null && echo "je cislo" || echo "neni cislo"
    je cislo
    kleptor@aine:/tmp$ value=blabla
    kleptor@aine:/tmp$ expr 1 + $value &> /dev/null && echo "je cislo" || echo "neni cislo"
    neni cislo
    
    Talking about music is like dancing to architecture.

    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.