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 14:00 | Zajímavý projekt

    Společnost Red Hat představila Fedora Hummingbird, tj. linuxovou distribuci s nativním kontejnerovým designem určenou pro vývojáře využívající AI agenty.

    Pinhead | Komentářů: 0
    dnes 02:22 | Zajímavý software

    Hru The Legend of Zelda: Twilight Princess od společnosti Nintendo si lze nově díky projektu Dusklight (původně Dusk) a reverznímu inženýrství zahrát i na počítačích a mobilních zařízeních. Vyžadována je kopie původní hry (textury, modely, hudba, zvukové efekty, …). Ukázka na YouTube. Projekt byl zahájen v srpnu 2020.

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

    Byla vydána nová major verze 29.0 programovacího jazyka Erlang (Wikipedie) a související platformy OTP (Open Telecom Platform, Wikipedie). Detailní přehled novinek na GitHubu.

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

    Po zranitelnostech Copy Fail a Dirty Frag přichází zranitelnost Fragnesia. Další lokální eskalace práv na Linuxu. Zatím v upstreamu neopravena. Přiřazeno ji bylo CVE-2026-46300.

    Ladislav Hagara | Komentářů: 1
    včera 14:00 | Komunita

    Sovereign Tech Agency (Wikipedie) prostřednictvím svého fondu Sovereign Tech Fund podpoří KDE částkou 1 285 200 eur.

    Ladislav Hagara | Komentářů: 5
    včera 12:55 | IT novinky

    Google na včerejší akci The Android Show | I/O Edition 2026 (YouTube) představil celou řadu novinek: Gemini Intelligence, notebooky Googlebook, novou generaci Android Auto, …

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

    Evropská komise by do léta mohla předložit návrh normy omezující používání sociálních sítí dětmi v zájmu jejich bezpečí na internetu. Prohlásila to včera předsedkyně EK Ursula von der Leyenová, podle níž řada zemí Evropské unie volá po zavedení věkové hranice pro sociální sítě. EU částečně řeší bezpečnost dětí v digitálním prostředí v již platném nařízení o digitálních službách (DSA), podle německé političky to však není dostatečné a

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

    Multiplatformní open source aplikace scrcpy (Wikipedie) pro zrcadlení připojeného zařízení se systémem Android na desktopu a umožňující ovládání tohoto zařízení z desktopu, byla vydána v nové verzi 4.0.

    Ladislav Hagara | Komentářů: 0
    12.5. 23:22 | Pozvánky

    Chybí vám někdo, s kým byste si popovídali o bastlení, technice, počítačích a vědě? Nechcete riskovat debatu o sportu u piva v hospodě? Pak doražte na virtuální pokec u virtuálního piva v rámci Virtuální Bastlírny organizované strahovským MacGyverem již tento čtvrtek. Možná se ptáte, co se tak může probírat? Dají se probrat slavná výročí - kromě 55 let obvodu 555 (což je mimochodem prý andělské číslo) a vzpomínky na firmu Signetics -

    … více »
    bkralik | Komentářů: 2
    12.5. 23:11 | Zajímavý software

    GTK2-NG je komunitní fork GTK 2.24 (aktuální verze je 4.22). Oznámení a diskuse v diskusním fóru Devuanu, forku Debianu bez systemd. Není to jediný fork GTK 2. Ardour je například postaven na vlastním forku GTK 2 s názvem YTK.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (13%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (6%)
     (3%)
     (16%)
     (25%)
    Celkem 1604 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: Bash - rozdíl mezi konstrukcí [[ ]] a [ ], rozdíl mezi "=" a "=="

    10.5.2010 19:10 pavel
    Bash - rozdíl mezi konstrukcí [[ ]] a [ ], rozdíl mezi "=" a "=="
    Přečteno: 784×
    Dobrý den, dosud používám pro podmínku konstrukci [ ]. Jaký je rozdíl mezi:
    [ -n "$foo" ] && [ -z "$foo" ] && echo "huh?"
    a
    [[ -n "$foo" ]] && [[ -z "$foo" ]] && echo "huh?"
    (V druhém případě si nemusím dávat pozor na uvozovky v podmínce.)
    
    Je nějaký rozdíl mezi:
    [ "$foo" == "ooo" ] || echo "foo neni ooo"
    a
    [ "$foo" = "ooo" ] || echo "foo neni ooo"
    
    

    Řešení dotazu:


    Odpovědi

    10.5.2010 20:06 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Bash - rozdíl mezi konstrukcí [[ ]] a [ ], rozdíl mezi "=" a "=="
    help [

    [ je to samé jako test. test a [[ se liší.

    Pokud to ale řešíte v bashi, tak ten jde nad rámec normy, aby uživatelé mohli používat oba příkazy pokud možno totožně.

    10.5.2010 22:23 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: Bash - rozdíl mezi konstrukcí [[ ]] a [ ], rozdíl mezi "=" a "=="
    [[ a == jsou bashoviny.

    [[ funguje podobně jako [.

    == umí rozeznat patterny narozdíl od =: [[ "foobar" == "foo*" ]].

    [ je normální program v /usr/bin. "if true" a "if [ ..." je z pohledu bashe to samé, spouští se program a kontroluje jeho návratová hodnota. [[ vyřizuje bash interně.

    == funguje jen v [[, standardní [ tomu nerozumí.

    Pokud používáte výhradně bash, používejte [[ a v něm == nebo = podle toho jestli potřebujete patterny.

    [[ umí navíc operátor =~ pro regexpy.
    In Ada the typical infinite loop would normally be terminated by detonation.
    12.5.2010 11:19 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: Bash - rozdíl mezi konstrukcí [[ ]] a [ ], rozdíl mezi "=" a "=="
    Aj [ robi bash interne. Hoci na neho existuje aj externa binarka.
    If you hold a Unix shell up to your ear, you can you hear the C.
    12.5.2010 16:05 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Bash - rozdíl mezi konstrukcí [[ ]] a [ ], rozdíl mezi "=" a "=="

    Sice je to builtin, ale pořád se chová jako příkaz; oproti tomu [[ ... ]] je jazyková konstrukce. Viz např.

    mike@lion:~> x='a b'
    mike@lion:~> y='a b'
    mike@lion:~> if [[ $x = $y ]]; then echo E; else echo D; fi
    E
    mike@lion:~> if [ $x = $y ]; then echo E; else echo D; fi
    bash: [: příliš mnoho argumentů                                                 
    D                                                                             
    frEon avatar 12.5.2010 13:19 frEon | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Bash - rozdíl mezi konstrukcí [[ ]] a [ ], rozdíl mezi "=" a "=="
    pri pouziti [[ ]] nemusis testovanou promennou uzavirat do uvozovek i v pripade, ze promenna obsahuje vic slov oddelenych mezerami. a="~/soubor velky"; [[ -f $a ]] bude fungovat

    pri pouziti [[ ]] se neexpanduji jmena souboru: [[ -f /etc/pass* ]] vrati true poze pokud existuje soubor /etc/pass\*, soubor /etc/passwd testu nevyhovi. Naopak [ -f /etc/pass* ] by vratil true, pokud by nasel pouze jeden soubor, ktery testu vyhovi. Pokud by takovych souboru nasel vic, vraci false.

    pri pouziti [[ ]] muzes porovnavat delku retezcu pomoci < a > namisto \< a \> jako pri [ ]

    pri pouziti [[ ]]] muzes pouzivat && a || misto tradicnich -o a -a

    nejake operatory navic, ted nevim z hlavy jake ;-)

    pri [[ ]] nemusis escapovat zavorky [[ test1 && (test2 || test3) ]]

    bude toho jeste vice, ale kdo si to ma vsechno pamatovat ;-)
    Talking about music is like dancing to architecture.
    12.5.2010 14:35 pavel
    Rozbalit Rozbalit vše Re: Bash - rozdíl mezi konstrukcí [[ ]] a [ ], rozdíl mezi "=" a "=="
    Díky za vysvětlení.
    frEon avatar 12.5.2010 19:49 frEon | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Bash - rozdíl mezi konstrukcí [[ ]] a [ ], rozdíl mezi "=" a "=="
    tesilo me ;-)
    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.