abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 14:33 | Pozvánky

    O víkendu 11. a 12. května lze navštívit Maker Faire Prague, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

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

    Byl vydán Fedora Asahi Remix 40, tj. linuxová distribuce pro Apple Silicon vycházející z Fedora Linuxu 40.

    Ladislav Hagara | Komentářů: 13
    včera 20:22 | IT novinky

    Představena byla služba Raspberry Pi Connect usnadňující vzdálený grafický přístup k vašim Raspberry Pi z webového prohlížeče. Odkudkoli. Zdarma. Zatím v beta verzi. Detaily v dokumentaci.

    Ladislav Hagara | Komentářů: 4
    včera 12:55 | Nová verze

    Byla vydána verze R14.1.2 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.

    JZD | Komentářů: 0
    7.5. 18:55 | IT novinky

    Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).

    Ladislav Hagara | Komentářů: 10
    7.5. 18:33 | IT novinky

    Apple představil (keynote) iPad Pro s čipem Apple M4, předělaný iPad Air ve dvou velikostech a nový Apple Pencil Pro.

    Ladislav Hagara | Komentářů: 3
    7.5. 17:11 | Nová verze

    Richard Biener oznámil vydání verze 14.1 (14.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 14. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.

    Ladislav Hagara | Komentářů: 0
    7.5. 13:44 | Komunita

    Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2023. Vybráni byli Bruno Haible za dlouhodobé příspěvky a správu knihovny Gnulib, nováček Nick Logozzo za front-end Parabolic pro yt-dlp a tým Mission logiciels libres francouzského státu za nasazování svobodného softwaru do praxe.

    Fluttershy, yay! | Komentářů: 0
    7.5. 13:11 | IT novinky

    Před 10 lety Microsoft dokončil akvizici divize mobilních telefonů společnosti Nokia a pod značkou Microsoft Mobile ji zanedlouho pohřbil.

    Ladislav Hagara | Komentářů: 2
    6.5. 21:33 | Komunita

    Fedora 40 release party v Praze proběhne v pátek 17. května od 18:30 v prostorách společnosti Etnetera Core na adrese Jankovcova 1037/49, Praha 7. Součástí bude program kratších přednášek o novinkách ve Fedoře.

    Ladislav Hagara | Komentářů: 5
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (63%)
     (8%)
     (13%)
     (16%)
    Celkem 145 hlasů
     Komentářů: 10, poslední včera 17:35
    Rozcestník

    Dotaz: Chyba v syntaxi?

    31.3.2010 12:14 Sunshine
    Chyba v syntaxi?
    Přečteno: 220×
    Udelal jsem si jednoduchy script, ovsem nevim kde je chyba. Doma mi to funguje naprostop bez problemu. Ovsem nahraju to na nas server (Ubuntu) a pise mi to chybu, ovsem nevim proc.

    http://www.upload.bagocina.com/uploads/1270070230.txt

    Jiste tomu rozumite, ale presto radsi napisu, ze je to nekonecna smycka pro restartovani core emulatoru.

    Odpovědi

    31.3.2010 12:28 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: Chyba v syntaxi?
    Namiesto "[ 1=1 ]" (ma to byt "[ 1 = 1 ]") daj "true".
    If you hold a Unix shell up to your ear, you can you hear the C.
    31.3.2010 16:43 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Chyba v syntaxi?
    Ještě doplním vysvětlení. Zápis "[ 1 = 1 ]" sice vypadá jako nějaká konstrukce jazyka shellu, ale to je jen zdání. Ve skutečnosti je "[" jen alias pro příkaz test. V případě bashe jsou oba implementovány jako builtin, pro jiné shelly jde o normální příkazy, které podle okolností najdete v /bin nebo /usr/bin. Aby ten příkaz dělal co má, potřebuje dostat správným způsobem oddělené parametry "1", "=", "1" (a v případě "[" ještě závěrečný "]", který ignoruje). Proto v "podmínce" nelze beztrestně vynechávat mezery.
    Jakub Lucký avatar 31.3.2010 14:45 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Chyba v syntaxi?
    Problém je v tom, že používáte /bin/sh...

    sh je historický shell, který se dnes nepoužívá a místo něj se používají programy (bash, dash), které umí staré sh emulovat. Potíž je v tom, že pokud smícháte syntaxi sh a (třeba) bash, tak vám to bash bude brát, i když tam máte #!/bin/sh, ale žádný další už ne, protože to není ani jeho syntax, ani sh syntax. A v Ubuntu je (pokud mě nešálí paměť) jako sh intepreter dash

    /bin/sh je proto jakýmsi standardem a používá se téměř výhradně pokud máte jistotu, že váš skript je v čisté sh syntaxi (v Debianu (a možná i Ubuntu) je na to skript checkbashisms)

    A tudíž řešení: změnit úvodní řádek na #!/bin/bash a takto to dělat ve všech skriptech, které nechcete mít multi-interpretové

    P.S. to cd tam máte zbytečně, stačí to napsat jako /cesta/k/binárce/binárka
    If you understand, things are just as they are; if you do not understand, things are just as they are.
    31.3.2010 15:30 cronin | skóre: 49
    Rozbalit Rozbalit vše Re: Chyba v syntaxi?
    Tie formulacie su vo viacerych bodoch prinajmensom nepresne.
    sh je historický shell, který se dnes nepoužívá a místo něj se používají programy (bash, dash), které umí staré sh emulovat.
    Nie cely svet je Linux, pozor.
    A tudíž řešení: změnit úvodní řádek na #!/bin/bash
    Tym sa spolahlivo odrovna prenostitelnost napr. na BSD. Ked uz, tak
    #! /usr/bin/env bash
    
    P.S. to cd tam máte zbytečně, stačí to napsat jako /cesta/k/binárce/binárka
    Co moze a nemusi byt pravda. Zatial co
    /cesta/k/binarke/binarka
    
    ponecha nezmeneny pracovny adresar, tak
    cd /cesta/k/binarke
    ./binarka
    
    pracovny adresar zmeni.
    31.3.2010 15:36 l4m4
    Rozbalit Rozbalit vše Re: Chyba v syntaxi?
    #! /usr/bin/env bash
    je příspěvek do soutěže o nejzbytečnější spuštění dalšího procesu.

    O portabilitu se postará instalátor přepsáním shbangů při instalaci, je-li to nutné.
    31.3.2010 15:37 cronin | skóre: 49
    Rozbalit Rozbalit vše Re: Chyba v syntaxi?
    :-D
    Jakub Lucký avatar 31.3.2010 15:51 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Chyba v syntaxi?
    Formulace jsou nepřesné, ale myslím že vzhledem k úrovni tazatele myslím dostatečné...

    Mimochodem, BSD používá původní Sh?

    Jinak env jako hashbang mi přijde zbytečnost, obzvlášť, když se bavíme o Ubuntu

    Co se té připomínky k cd týče, ta je určitě validní
    If you understand, things are just as they are; if you do not understand, things are just as they are.
    31.3.2010 16:30 cronin | skóre: 49
    Rozbalit Rozbalit vše Re: Chyba v syntaxi?
    Formulace jsou nepřesné, ale myslím že vzhledem k úrovni tazatele myslím dostatečné...
    Myslim, ze ani neskuseneho pouzivatela netreba zbytocne pliest skreslenymi informaciami. Zjednodusene informacie su namieste, skreslene nie.
    Mimochodem, BSD používá původní Sh?
    Ako interaktivny shell pouziva BSD [t]csh, co je v porovnani s Bourne[-Again] shellom absolutne odlisne udelatko. Zakladny system obsahuje sh, ktory sa hojne vyuziva na skriptovanie, rovnako ako v Linuxe. Zakladny system ale neobsahuje bash; ten je povazovany za externu aplikacu. Ak sa doinstaluje z balikov alebo portov, instaluje sa do /usr/local/bin/bash; preto ta namietka voci pevnej ceste k bash-u v shebangu.

    Jakub Lucký avatar 31.3.2010 15:51 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Chyba v syntaxi?
    Formulace jsou nepřesné, ale myslím že vzhledem k úrovni tazatele myslím dostatečné...

    Mimochodem, BSD používá původní Sh? (nevím, ptám se ze zvědavosti)

    Jinak env jako hashbang mi přijde zbytečnost, obzvlášť, když se bavíme o Ubuntu

    Co se té připomínky k cd týče, ta je určitě validní
    If you understand, things are just as they are; if you do not understand, things are just as they are.
    31.3.2010 16:47 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Chyba v syntaxi?
    S tím bych si dovolil nesouhlasit. V tom skriptu není - až na chybějící mezery - nic, s čím by si neporadil i obyčejný sh. A bez nich si s tím neporadí ani bash - přesněji řečeno bude to sice dělat to, co tazatel zamýšlel, ale jen šťastnou shodou okolností (doporučuji vyzkoušet s 1=0 a rozmyslet si, proč je i v tomto případě podmínka považována za splněnou).

    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.