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 10:22 | Upozornění

    Ze systému Slavia pojišťovny uniklo přibližně 150 gigabajtů citlivých dat. Jedná se například o pojistné dokumenty, lékařské záznamy nebo přímou komunikaci s klienty. Za únik může chyba dodavatelské společnosti.

    Ladislav Hagara | Komentářů: 1
    dnes 10:11 | IT novinky

    Sněmovna propustila do dalšího kola projednávání vládní návrh zákona o digitální ekonomice, který má přinést bezpečnější on-line prostředí. Reaguje na evropské nařízení DSA o digitálních službách a upravuje třeba pravidla pro on-line tržiště nebo sociální sítě a má i víc chránit děti.

    Ladislav Hagara | Komentářů: 6
    dnes 09:33 | IT novinky

    Meta převezme sociální síť pro umělou inteligenci (AI) Moltbook. Tvůrci Moltbooku – Matt Schlicht a Ben Parr – se díky dohodě stanou součástí Meta Superintelligence Labs (MSL). Meta MSL založila s cílem sjednotit své aktivity na poli AI a vyvinout takovou umělou inteligenci, která překoná lidské schopnosti v mnoha oblastech. Fungovat by měla ne jako centralizovaný nástroj, ale jako osobní asistent pro každého uživatele.

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

    Byla vydána betaverze Fedora Linuxu 44 (ChangeSet), tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 14. dubna.

    Ladislav Hagara | Komentářů: 0
    včera 12:11 | IT novinky

    Open source router Turris Omnia NG Wired je v prodeji. Jedná se o Turris Omnia NG bez Wi-Fi. Je připraven pro zamontování do racku.

    Ladislav Hagara | Komentářů: 6
    včera 11:44 | Pozvánky

    Sníh roztál a roztávají i bastlíři. Žene se na nás celá řada konferencí a seminářů technického rázu. Zajímá vás, jaké? Pak se připojte k 60. Virtuální Bastlírně, tedy k veřejné diskuzi bastlířů, techniků, učitelů i vědců. Jako vždy přijde na přetřes spousta novinek ze světa hardwaru, softwaru i bizáru. Na začátek lze očekávat hardwarová témata, tedy například nový KiCAD 10, nové akcelerátory LLM s nízkou spotřebou, nejvíce fosforeskující

    … více »
    bkralik | Komentářů: 1
    včera 11:22 | Zajímavý článek

    IuRe (Iuridicum Remedium) v rámci programu Digitální svobody zveřejnila analýzu dopadů a efektivity systémů ověřování věku v digitálním prostoru, která srovnává implementace ověřování věku v Austrálii, Velké Británii a Evropské unii.

    |🇵🇸 | Komentářů: 1
    včera 04:22 | Nová verze

    Multiplatformní emulátor terminálu Ghostty byl vydán ve verzi 1.3 (𝕏, Mastodon). Přehled novinek a vylepšení v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 03:55 | Nová verze

    Byla vydána nová verze 14.4 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 5
    9.3. 23:22 | Nová verze

    Databáze DuckDB (Wikipedie) byla vydána ve verzi 1.5.0. S kódovým názvem Variegata (husice rajská). Přináší řadu vylepšení, včetně nového ergonomičtějšího CLI klienta nebo podporu pro typ VARIANT a vestavěný typ GEOMETRY.

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

    Dotaz: bash porovnani stringu

    29.1.2016 13:49 mmmmmm
    bash porovnani stringu
    Přečteno: 634×
    Nevíte proč mi

    if [ "x"=="y" ]; then echo "ano"; else echo "ne"; fi;

    vrací ano

    Díky

    Řešení dotazu:


    Odpovědi

    29.1.2016 13:56 NN
    Rozbalit Rozbalit vše Re: bash porovnani stringu
    Protoze tam nemas mezery..
    29.1.2016 14:00 mmmmmm
    Rozbalit Rozbalit vše Re: bash porovnani stringu
    :-) aha, sakra, přitom taková blbost díky moc
    29.1.2016 15:10 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: bash porovnani stringu
    Kromě toho je ošklivý zlozvyk používat porovnání pomocí "==" v jednoduchých hranatých závorkách. Tam patří obyčejné "=".
    29.1.2016 22:51 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: bash porovnani stringu
    Kdysi dávno jsem se podivoval nad tím, proč některé programovací jazyky používají pro porovnávání "==" místo běžného "=". Nikdo s tím nic neudělal a každý jazyk to má stále posvém. Není divu, že se to neustále plete.

    Zrovna tohle se do automatického korektoru v editoru dává blbě.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    29.1.2016 23:12 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: bash porovnani stringu
    V klasické knize od Kernighana a Richieho se píše, že když se při návrhu C rozmýšleli, jaký operátor použít pro porovnání a jaký pro přiřazení, udělali si statistiku a zjistili, že v tom typu programů, pro který mělo být C určené, se přiřazuje výrazně častěji než porovnává na rovnost. Proto na rozdíl od některých jiných jazyků použili prosté "=" pro přiřazení a složitější "==" pro porovnání. IMHO to většina jazyků, které mají ty operátory zrovna takhle, převzala z C.
    29.1.2016 23:59 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: bash porovnani stringu
    No právě, takhle zahodili dosavadní zvyklosti. Místo toho, aby si udělali makro do editoru, zkrátili syntaktický zápis. A od té doby s tou schízou musíme žít :-)

    Jaké by to asi bylo, kdyby se pro porovnání prosadilo fortranské "eq" a "ne"?

    Dnes se místo jednoho tabu odsazuje čtyřmi mezerami a prosazuje se to jako norma. Plýtvání místem ve zdrojáku už nikomu nevadí.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    30.1.2016 00:26 Dirka | skóre: 15 | blog: dirka12345
    Rozbalit Rozbalit vše Re: bash porovnani stringu
    jakej je rozdil mezi == != a eq ne v delce zapisu?

    mimoto napr perl ma podle typu porovnani == nebo eq ...
    30.1.2016 00:41 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: bash porovnani stringu
    Kolem "==" a "!=" nejsou nutné mezery, takže zápis je kratší. Je však dobrým zvykem je tam psát kvůli čitelnosti.

    Perl je kapitola sama pro sebe.

    V Javě se běžně používá metoda equals(). Důvody pro zkracování zápisu padly, dnes se jednoznačně dává přednost čitelnosti pro lidi - klidně i na úkor délky zápisu. Šetřit na počtu znaků dnes už nedává smysl.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    30.1.2016 01:00 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: bash porovnani stringu
    Jen k tomu dodám, že kdybych dnes navrhoval nějaký nový jazyk, tak bych pro porovnání asi také použil "==" a "!=", protože programátoři jsou na to už zvyklí, význam je jednoznačný a proto nevidím důvod to měnit.

    Možná bych však zvolil pro přiřazení osvědčený symbol ":=", aby nedocházelo k omylům, které dodnes mnoho programátorů trápí. Samotné rovnítko by nemělo žádný význam a jeho výskyt by indikoval překlep už na úrovni syntaktické kontroly.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    xxxxxx avatar 30.1.2016 11:20 xxxxxx | skóre: 23
    Rozbalit Rozbalit vše Re: bash porovnani stringu
    A nebo jít Pythoní cestou: = pro přiřazení, == pro porovnání, ale = se nesmí vyskytovat v podmínce (tuším, že to je syntax error), čímž odpadnou problémy jako v C.
    30.1.2016 11:53 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: bash porovnani stringu
    Ano, to souhlasí. "=" v pythonské podmínce vyhodí SyntaxError.

    Podobně to dopadne i ve Fortranu: "==" pro porovnání funguje, ale "=" vyhodí Syntax error.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    1.2.2016 18:32 Jardík
    Rozbalit Rozbalit vše Re: bash porovnani stringu
    Dovolím si upozornit na jednu věc. Pokud někdy budeš porovnávat obsah proměnné (která bude na levé straně), tak nezapomeň vložit nějaký prefix. Např.
    if [ "x${mojepromenna}" = "xmojetestovanahodnota" ]; then ...
    
    Proč ... protože by mojepromenna mohla být ošklivá, třeba obsahovala řetězec "-f". Ve výsledku by se ti testovala existence souboru.
    1.2.2016 19:00 nobody
    Rozbalit Rozbalit vše Re: bash porovnani stringu
    v kterem interpretu, nebo snad v kterem vesmiru ? :) v sh i bash mi tohle funguje ok:
    moje="-f"
    if [ "${moje}" = "-f" ]; then echo "je to -f"; fi
    1.2.2016 19:52 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: bash porovnani stringu
    Podobné příklady je vhodné si nejdřív vyzkoušet. Tenhle příklad totiž bash rozparsuje správně. :-)
    1.2.2016 19:53 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: bash porovnani stringu
    Omlouvám se, moje reakce samozřejmě patřila o úroveň výš.

    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.