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 04:00 | Komunita

    Před necelými čtyřmi měsíci byl Steven Deobald jmenován novým výkonným ředitelem GNOME Foundation. Včera skončil, protože "nebyl pro tuto roli v tento čas ten pravý".

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

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 156 (pdf).

    Ladislav Hagara | Komentářů: 0
    včera 15:11 | 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 25.8.1. Přehled novinek v Changelogu.

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

    Včera večer měl na YouTube premiéru dokumentární film Python: The Documentary | An origin story.

    Ladislav Hagara | Komentářů: 0
    28.8. 23:33 | Nová verze

    Společnost comma.ai po třech letech od vydání verze 0.9 vydala novou verzi 0.10 open source pokročilého asistenčního systému pro řidiče openpilot (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 0
    28.8. 21:55 | Nová verze Ladislav Hagara | Komentářů: 2
    28.8. 14:11 | IT novinky

    Řada vestavěných počítačových desek a vývojových platforem NVIDIA Jetson se rozrostla o NVIDIA Jetson Thor. Ve srovnání se svým předchůdcem NVIDIA Jetson Orin nabízí 7,5krát vyšší výpočetní výkon umělé inteligence a 3,5krát vyšší energetickou účinnost. Softwarový stack NVIDIA JetPack 7 je založen na Ubuntu 24.04 LTS.

    Ladislav Hagara | Komentářů: 4
    28.8. 00:44 | Bezpečnostní upozornění

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) spolu s NSA a dalšími americkými úřady upozorňuje (en) na čínského aktéra Salt Typhoon, který kompromituje sítě po celém světě.

    Ladislav Hagara | Komentářů: 26
    27.8. 16:33 | IT novinky

    Společnost Framework Computer představila (YouTube) nový výkonnější Framework Laptop 16. Rozhodnou se lze například pro procesor Ryzen AI 9 HX 370 a grafickou kartu NVIDIA GeForce RTX 5070.

    Ladislav Hagara | Komentářů: 1
    27.8. 14:22 | IT novinky

    Google oznamuje, že na „certifikovaných“ zařízeních s Androidem omezí instalaci aplikací (včetně „sideloadingu“) tak, že bude vyžadovat, aby aplikace byly podepsány centrálně registrovanými vývojáři s ověřenou identitou. Tato politika bude implementována během roku 2026 ve vybraných zemích (jihovýchodní Asie, Brazílie) a od roku 2027 celosvětově.

    Fluttershy, yay! | Komentářů: 10
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (79%)
     (8%)
     (3%)
     (4%)
     (5%)
     (1%)
    Celkem 107 hlasů
     Komentářů: 9, poslední 28.8. 11:53
    Rozcestník

    Dotaz: Proč mi nefunguje jednoduchý příkaz "if" správně?

    Aetos avatar 3.3.2012 17:29 Aetos | skóre: 13
    Proč mi nefunguje jednoduchý příkaz "if" správně?
    Přečteno: 308×

    Ahoj, měl bych další malý dotaz. Věřím že mi někdo poradí nějakou maličkost a ono to půjde. Googlil jsem dlouho, až jsem nakonec našel příklad nady na http://www.abclinuxu.cz/clanky/navody/bash-iii. Ale asi to tam bylo špatně napsané. Spousta lidí se o tom hádala, ale já to z jejich debaty nepochopil. Otázka zní: proč mi nefunguje takto naspaný příkaz if:

    if [$a=="1"] && [$b=="2"]; then	#chyba: tento řádek: [1==1]: příkaz nenalezen	
       ln s$b ../hl
    fi

    Asi mám špatně napsaný ten if. U čísel mám uvozovky i když to není String, ale když je odtraním tak to pořád dělá to samé.

     

    Děkuji předem za pomoc

    P.S. - pro jistotu to přidávám celé

    #!/bin/bash  
    DATE=`date +%d.%m.%Y`
    DIR="temp-$DATE" 	
    mkdir $DIR;
    cd $DIR
    
    for (( a=1 ; $a-3 ; a=$a+1 ))
       do	
          mkdir adr$a
    	cd adr$a/

        for((b=1; $b-4; b=$b+1))
            do
              touch s$b
              if [$a==1] && [$b==2]; then		
                  ln s$b ../hl
              fi
              if [$a==2 && $b==1]; then		
                 ln -s s$b ../sl
              fi
            done
    done

     


    Řešení dotazu:


    Odpovědi

    3.3.2012 17:39 Vlk
    Rozbalit Rozbalit vše Re: Proč mi nefunguje jednoduchý příkaz "if" správně?
    V bashi jsem nedělal už nějakou chvíli, ale mám pocit, že musíš dodržovat mezery mezi výrazy, aby si je mohl bash správně vyložit.

    Například takhle.

    [ $a == 1 ] && [ $b == 2 ]
    Aetos avatar 3.3.2012 17:43 Aetos | skóre: 13
    Rozbalit Rozbalit vše Re: Proč mi nefunguje jednoduchý příkaz "if" správně?
    Děkuji ti mnohokrát za pomoc, už nad tím sedím 60 minut a stačili mezery :-) díky
    Jendа avatar 3.3.2012 17:41 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Proč mi nefunguje jednoduchý příkaz "if" správně?
    [ je název programu (u mě /usr/bin/[). Parametry se pochopitelně musí oddělit mezerou, stejně jako nemůžeš napsat mkdiradresář místo mkdir adresář.
    Aetos avatar 3.3.2012 17:45 Aetos | skóre: 13
    Rozbalit Rozbalit vše Re: Proč mi nefunguje jednoduchý příkaz "if" správně?
    Díky, už jsem se další novou věc naučil :-) Teď mi to jen dělá něco jiného než chci, ale s tím si už poradím. Když to do pár hodin nevyřeším tak se ozvu :-D
    Aetos avatar 3.3.2012 18:01 Aetos | skóre: 13
    Rozbalit Rozbalit vše Re: Proč mi nefunguje jednoduchý příkaz "if" správně?
    Dobře zeptám se hned. Nevíš náhodou, proč se mi v programu ten pevný link vytvoří správně ale symbolický link se vytvoří špatně? On ten symbolický link hlásí že sobor kam ukazuje, už neexistuje.
    3.3.2012 20:01 l4m4
    Rozbalit Rozbalit vše Re: Proč mi nefunguje jednoduchý příkaz "if" správně?
    To je nějaká podezřelá hláška. Nehlásí náhodou, že už existuje? V tom případě použij -f, abys ho přepsal, i když existuje (pokud je to to, co chceš).

    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.