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 | Komunita

    Kalifornský zákon AB 1043 platný od 1. ledna 2027 vyžaduje, aby operační systémy požadovaly po uživatelích věk nebo datum narození a skrze API poskytovaly aplikacím informaci, zda je uživatel mladší 13 let, má 13 až 16 let, má 16 až 18 let nebo má alespoň 18 let. Vývojáři linuxových distribucí řeší, co s tím (Ubuntu, Fedora, …).

    Ladislav Hagara | Komentářů: 37
    dnes 11:44 | Pozvánky

    Konference LinuxDays 2026 proběhne o víkendu 3. a 4. října v Praze v areálu ČVUT v Dejvicích na FIT. Čekají vás desítky přednášek, workshopy, stánky a setkání se spoustou chytrých lidí.

    Petr Krčmář | Komentářů: 0
    dnes 00:44 | Humor

    Nové verze webových prohlížečů Chrome a Firefox jsou vydávány každé 4 týdny. Aktuální verze Chrome je 145. Aktuální verze Firefoxu je 148. Od září přejde Chrome na dvoutýdenní cyklus vydávání. V kterém týdnu bude mít Chrome větší číslo verze než Firefox? 😀

    Ladislav Hagara | Komentářů: 1
    včera 21:55 | IT novinky Ladislav Hagara | Komentářů: 3
    včera 13:44 | Komunita

    Bylo spuštěno hlasování o přednáškách a workshopech pro letošní Installfest, jenž proběhne o víkendu 28. a 29. března v Praze na Karlově náměstí 13.

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

    Byla vydána (Mastodon, 𝕏) třetí RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.

    Ladislav Hagara | Komentářů: 0
    2.3. 21:44 | IT novinky

    Apple představil iPhone 17e a iPad Air s čipem M4.

    Ladislav Hagara | Komentářů: 15
    2.3. 21:11 | Zajímavý software

    Byla vydána verze 1.0 editoru kódů Gram. Jedná se o fork editoru Zed bez telemetrie a umělé inteligence.

    Ladislav Hagara | Komentářů: 0
    2.3. 20:33 | IT novinky

    Byla oznámena spolupráce GrapheneOS s Motorolou. Podrobnosti v tiskové zprávě. GrapheneOS (Wikpedie) je varianta Androidu zaměřující se na bezpečnost a soukromí.

    Ladislav Hagara | Komentářů: 0
    2.3. 02:22 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 26.2.1. Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (17%)
     (6%)
     (0%)
     (11%)
     (28%)
     (2%)
     (5%)
     (1%)
     (13%)
     (25%)
    Celkem 1007 hlasů
     Komentářů: 25, poslední 3.2. 19:50
    Rozcestník

    Dotaz: BASH - Jak zjistit jestli obsahuje proměnná jen jednu tečku.

    18.2.2013 13:39 Vávra.V
    BASH - Jak zjistit jestli obsahuje proměnná jen jednu tečku.
    Přečteno: 315×
    Dobrý den, poradíl by někdo jak můžu v bashi zjistit jestli proměnná obsahuje pouze jednu tečku? Děkuji za pomoc

    V.V.

    Odpovědi

    18.2.2013 14:12 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: BASH - Jak zjistit jestli obsahuje proměnná jen jednu tečku.

    Budeme-li předpokládat, že "pouze jednu" znamená "právě jednu", tak třeba

    if [ "${a//[!.]/}" = "." ]; then
        ...
    fi
    

    Pokud to má znamenat "nejvýše jednu", tak např.

    if [ "${a%.*}" = "${a%%.*}" ]; then
        ...
    fi
    
    18.2.2013 14:34 Vávra.V
    Rozbalit Rozbalit vše Re: BASH - Jak zjistit jestli obsahuje proměnná jen jednu tečku.

    Budeme-li předpokládat, že "pouze jednu" znamená "právě jednu", tak třeba

    Pokud to má znamenat "nejvýše jednu", tak např.

    UF, absolutně nevím co jste tím myslel, teď jste mě dostal :D :D :D

    Potřebuji podmínku, která zjistí jestlí nějaká proměnná obsahuje pouze jednu jedinou tečku ;)
    18.2.2013 14:38 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: BASH - Jak zjistit jestli obsahuje proměnná jen jednu tečku.
    "Právě jednu" znamená "počet teček je roven jedné". "Nejvýše jednu" znamená "počet teček je menší nebo roven jedné". Co z toho jste myslel výrazem "pouze jednu", nevím, tak jsem napsal řešení pro obě varianty.
    18.2.2013 14:39 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: BASH - Jak zjistit jestli obsahuje proměnná jen jednu tečku.
    "Pouze jednu" se nejvíc blíží "právě jednu", ale když to takto zdůrazníte tak to trochu evokuje i:
    [[ "$promenna" == "." ]] && echo "Proměnná promenná obsahuje pouze jednu jedinou tečku a njic víc?"
    :D
    18.2.2013 14:47 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: BASH - Jak zjistit jestli obsahuje proměnná jen jednu tečku.
    Mně to zase případalo jako "s jistotou vím, že tam aspoň jedna je, a chci ověřit, jestli jich není víc", pak by bylo jedno, která z variant zadání se vezme - tedy aspoň do chvíle, než by nějaký zákeřný uživatel vytvořil soubor bez tečky v názvu. :-)
    18.2.2013 15:06 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: BASH - Jak zjistit jestli obsahuje proměnná jen jednu tečku.
    Ano původní dotaz jsem také tak pochopil.
    18.2.2013 14:26 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: BASH - Jak zjistit jestli obsahuje proměnná jen jednu tečku.
    Např. pomocí regexp, ale pozor na verzi Bash, pod kterou chete aby to chodilo, pro ty novější verze:
    [[ $promenna =~  ^[^.]*\.[^.]*$  ]] && echo "Proměnná $promenna obsahuje právě jednu tečku."
    Pro starší verze či jiné shelly třeba:
    echo $promenna | grep -q "^[^.]*\.[^.]*$"
    [[ $? -eq 0 ]] && echo "Proměnná $promenna obsahuje právě jednu tečku."
    
    Nebo pokud vám stačí poznat, že proměnná obsohuje nejvýše jednu tečku (tedy jednu nebo žádnou) tak třeba takto:
    [[ ${promenna#*.} == ${promenna##*.} ]] && echo "Promenna $promenna není vícetečková."
    Asi by to šlo i nějak jednoduššeji.
    18.2.2013 14:28 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: BASH - Jak zjistit jestli obsahuje proměnná jen jednu tečku.
    Ano z Michalova přispěvku vidím, že to jde jednoduššeji negací [!.] :)
    18.2.2013 16:46 Vávra.V
    Rozbalit Rozbalit vše Re: BASH - Jak zjistit jestli obsahuje proměnná jen jednu tečku.
    Díky všem za pomoc, musím to pořádně nastudovat ;) Není nad praktické příklady :-(

    BTW: a kdybych potřeboval v budoucnu zjistit jestli proměnná neobsahuje žádnou tečku? Jak by to šlo jednoduše zjistit. Děkuji
    18.2.2013 17:52 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: BASH - Jak zjistit jestli obsahuje proměnná jen jednu tečku.
    [[ $a != *.* ]]
    If you hold a Unix shell up to your ear, you can you hear the C.

    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.