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 06:00 | IT novinky

    Dle plánu dnes ve 13:00 proběhne veřejný test eDokladů. Jeho cílem je ověřit připravenost aplikace a související infrastruktury na vysokou souběžnou zátěž před podzimními komunálními volbami.

    Ladislav Hagara | Komentářů: 10
    dnes 04:11 | Nová verze

    Byla vydána nová verze 3.47 frameworku Flutter (Wikipedie) pro vývoj mobilních, webových i desktopových aplikací a nová verze 3.13 souvisejícího programovacího jazyka Dart (Wikipedie).

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

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

    Ladislav Hagara | Komentářů: 0
    včera 19:00 | IT novinky

    Na akci Made by Google 2026 (YouTube) byla oficiálně představena jedenáctá generace telefonů Pixel s novým čipem Google Tensor G6 a hodinky Pixel Watch 5.

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

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) se spolu s partnery z dalších zemí připojil ke společnému upozornění (Joint Cybersecurity Advisory) týkajícímu se probíhající kybernetické kampaně skupiny LAUNDRY BEAR zaměřené na uživatele e-mailové platformy Zimbra Collaboration Suite (ZCS) nejméně od července 2025. NÚKIB doporučuje organizacím využívajícím Zimbra Collaboration Suite neprodleně ověřit, zda

    … více »
    Ladislav Hagara | Komentářů: 2
    včera 14:22 | Nová verze

    Intel vydal 42 upozornění na bezpečnostní chyby ve svých produktech. Současně vydal verzi 20260811 mikrokódů pro své procesory.

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

    Sny o designu GNOME Shellu, článek s náhledy a videi, představuje dlouhodobou vizi týmu GNOME pro vylepšení uživatelského rozhraní GNOME Shellu. Zatímco nedávné verze přinášely spíše drobné úpravy, designéři nyní plánují zásadnější změny.

    Ladislav Hagara | Komentářů: 15
    včera 05:22 | Nová verze

    Byla vydána nová verze 10.5 sady aplikací pro SSH komunikaci OpenSSH. Přináší řadu důležitých bezpečnostních oprav, vylepšení funkcí a oprav chyb. Nově vyžaduje podporu ECC (Elliptic Curve Cryptography) v libcrypto, včetně křivky NISTP521.

    Ladislav Hagara | Komentářů: 0
    včera 05:11 | Nová verze

    Byla vydána nová verze 10.6 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. S novými obrazy pro Orange Pi 4 Pro, Orange Pi Zero 3W a Odroid M1/M1S/M2. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    11.8. 14:44 | IT novinky

    Námořní drony používané elitními jednotkami britského královského námořnictva tajně posílaly údaje do Číny. Stroje vybavené čínskými komponenty měly být využívány pro vojenské operace na Blízkém východě. Kamery na dálkově řízených průzkumných člunech K3 Scout byly vybavené součástkami, které bez vědomí britského námořnictva odesílaly informace do spojeného zařízení v Číně. Britské námořní síly využívaly flotilu námořních dronů

    … více »
    Ladislav Hagara | Komentářů: 7
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (18%)
     (30%)
     (6%)
     (6%)
     (2%)
     (15%)
     (23%)
    Celkem 2377 hlasů
     Komentářů: 31, poslední dnes 00:27
    Rozcestník


    Dotaz: Jak na kontrolu znaků

    24.2.2013 18:31 Martin
    Jak na kontrolu znaků
    Přečteno: 451×
    Dobrý večer, nemá někdo bash podmínku-script který dokáže zjistit, jestli daný řetězec obsahuje pouze znaky malé znaky bez diakritiky a čísla? Nesmí obsahovat háčky, čárky, velké znaky, mezery, tečky, limítka, podtržítka, pomlčky prostě nic, jen abcdefghijklmnoprstvwxyz0123456789 Může někdo znalý pomoci? Děkuji Martin

    Odpovědi

    24.2.2013 18:35 chrono
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    if [[ "retazec" =~ ^[a-z0-9]*$ ]]
    then
        echo "retazec je OK"
    fi
    
    24.2.2013 20:51 potato
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    if [[ "retazec" =~ '^[a-z0-9]*$' ]]
    paranoi není nikdy dost.
    24.2.2013 22:18 rubicon
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    Což o to, zdravá opatrnost není na škodu, ale v tomhle případě radíte špatně.

    "Any part of the pattern may be quoted to force it to be matched as a string."

    Pokud $retazec neobsahuje identickou posloupnost znaků mezi uvozovkami, bude návratová hodnota 1, což tazatel zajisté nechtěl.
    24.2.2013 22:52 potato
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    Mea culpa, [[ ... ]] je svérázná konstrukce, uvnitř níž neprobíhají některé expanze. Navíc neexistuje způsob, jak zapsat totéž pomocí test, takže jsme se opět syntakticky přiblížili perlu :(
    25.2.2013 08:09 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    Navíc neexistuje způsob, jak zapsat totéž pomocí test, takže jsme se opět syntakticky přiblížili perlu :(

    Jste si jistý, že neexistuje? Co třeba

      if [ -z "${str//[[:alnum:]]}" ]; then
          ...
      fi
    

    Mimochodem, "[0-9a-z]" u mne v locale cs_CZ.UTF-8 zahrnuje všechna malá i velká písmena kromě ž, Z a Ž. Pochybuji, že to je to, co měl tazatel na mysli.

    25.2.2013 09:22 chrono
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    [[:alnum:]] zase zahŕňa aj veľké písmená. :) (takže správna kombinácia bude [[:lower:][:digit:]] )
    25.2.2013 09:24 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    Jak je zmíněno v příspěvku, na který odpovídáte, [a-z] také - tedy aspoň většinu z nich.
    25.2.2013 15:03 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    Správná kombinace to nebude, protože malá písmena s nabodeníčky nejsou o nic menší, než malá písmena bez nich, takže [:lower:] zahrnuje i ty háčkované a čárkované, kroužkované nevyjímaje, a to jsem zatím jen u češtiny či slovenčtiny, takže si ještě račme přenastaviti locale :-)
    25.2.2013 20:11 potato
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    Myslel jsem test na regulární výraz obecně, který je v bashi možný pouze pomocí [[ ... ]].

    Lokalizace je samozřejmě při skriptování mor, protože příkazy mají zřídka jasnou hranici mezi výstupem pro člověka a výstupem pro další zpracování, a jediná pomoc je automaticky export LC_ALL=C v každém skiptu, který čte výstup čehokoli nebo pracuje se znaky.
    25.2.2013 14:56 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    Ono je vůbec otázka proč to psát pomocí test, když stačí grep.
    if grep -q "^[[:lower:][:digit:]]*$" <<<"123abc"; then
      echo "ok..."
    fi
    A v tom [[ ]] nemusíte dávat do uvozovek ani ten $retezec, když jsme u toho, takže ano, při porovnávání s test lze očekávat spíš odlišnosti než podobnosti.
    25.2.2013 15:33 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    Ono je vůbec otázka proč to psát pomocí test, když stačí grep

    Příkaz test je v bashi builtin, grep ne. Tedy aspoň zatím ne. :-)

    25.2.2013 15:07 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    retezec="abcdefghijklmnoprstvwxyz0123456789"
    
    LC_ALL=C
    
    if [[ $retazec =~ ^[[:lower:][:digit:]]*$ ]]
    then
        echo "retazec je OK"
    fi
    a případně vrátit locale zpět.

    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.