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í
×
    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ářů: 4
    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ářů: 0
    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ářů: 2
    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
    6.5. 21:11 | IT novinky

    Stack Overflow se dohodl s OpenAI o zpřístupnění obsahu Stack Overflow pro vylepšení OpenAI AI modelů.

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

    Dotaz: Jak na kontrolu načtení souboru

    8.9.2013 19:00 Marky
    Jak na kontrolu načtení souboru
    Přečteno: 456×
    DD, chtěl bych se zeptat, jak se dá udělat v bash/shell tohle, příklad je pro PHP. Děkuji za ochotu ;)
    if(!include_once 'file.php'){
      echo("File not loaded... :-(");
      exit("Error!");
    }

    Odpovědi

    8.9.2013 19:29 Kit
    Rozbalit Rozbalit vše Re: Jak na kontrolu načtení souboru
    Tohle se ale v PHP už dávno nedělá.

    Použij příkaz trap.
    8.9.2013 19:53 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Jak na kontrolu načtení souboru
    Když uděláš:
    . file.bash

    tak v $? je uložena návratová hodnota posledního příkazu z file.bash, pokud soubor neexistuje tak to zklame (tedy nebude tam 0).

    Tedy můžeš testovat $?, ale netestuješ přímo to, na co se ptáš…

    Pokud je file.bash tvůj script a nakonci máš exit 0 , tak přes $? otestuješ jestli se korektně provedl nebo ne a to 'ne' zahrnuje i neexistenci.

    PS: Ta PHP konstrukce mi nedává moc smysl…

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    8.9.2013 20:05 Marky
    Rozbalit Rozbalit vše Re: Jak na kontrolu načtení souboru
    Vyzkouším, děkuji, Ihmo, jak se v php už nedělá? Co je na té konstrukci špatně?
    8.9.2013 20:09 Kit
    Rozbalit Rozbalit vše Re: Jak na kontrolu načtení souboru
    Prostě uděláš
    include_once 'file.php';
    O zbytek se postarají výjimky.
    8.9.2013 20:19 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Jak na kontrolu načtení souboru

    Jestli je include fatální v daný okamžik, tak pak:

    require_once 'file.php';
    a je to. pokud není (použije se include), tak to zklame kde má…

    Možná konstrukce:

    if(!(@include_once 'file.php')) 
      throw new myInclException("Bylo tu, není tu");
    
    by možná dávala (mně) smysl.

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    8.9.2013 20:38 Kit
    Rozbalit Rozbalit vše Re: Jak na kontrolu načtení souboru
    I fatální chyba se v PHP dá odchytit přes register_shutdown_function(). Je zbytečné kvůli tomu definovat další výjimku.
    8.9.2013 21:00 Marky
    Rozbalit Rozbalit vše Re: Jak na kontrolu načtení souboru
    Chlapy a co nějak takto?
    exitus(){
    echo "Soubor se nepodařilo načíst.."
    exit 1
    }
    
    . file.bash || exitus
    nebo jen
    . file.bash || exit 1
    8.9.2013 21:10 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Jak na kontrolu načtení souboru
    Jak jsem psal výše, testuješ tím, že poslední příkaz obsažený ve file.bash (skončil bez chyby) vs. (poslední příkaz skončil s chybou nebo soubor se nepodařilo vložit/provést).
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    11.9.2013 09:18 Marky
    Rozbalit Rozbalit vše Re: Jak na kontrolu načtení souboru
    Jak jsem psal výše, testuješ tím, že poslední příkaz obsažený ve file.bash (skončil bez chyby) vs. (poslední příkaz skončil s chybou nebo soubor se nepodařilo vložit/provést).
    Ale toho příkazem . /my.sh || exitus docílím i tak, na víc je to jediné co funguje, jelikož když budu chtít testovat $? == 0 tak přece nemůžu dát do sourcovaného scriptu na konec exit 0 :-D jelikož by se hned celý script ukončil.. Dík
    11.9.2013 19:03 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Jak na kontrolu načtení souboru

    Oops, velké sorry za exit 0, mělo být return 0 - nějak mi to ujelo.

    Přikazem
    . /my.sh || exitus
    docílíš úplně to samé co
    . /my.sh
    if [ $? != 0 ]; then exitus;  fi
    
    bo to je to de-facto to samé jen jinak napsané, tedy stále platí, že chyba nastane pokud poslední příkaz vkládaného souboru skončí s chybou nebo soubor neexistuje.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    Tarmaq avatar 9.9.2013 16:41 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Jak na kontrolu načtení souboru
    FILE=foo.sh
    
    if test -e $FILE; then
        . $FILE
    else
        echo "File not loaded... :-(";
        exit 1
    fi
    
    Don't panic!
    11.9.2013 10:36 Patrik Uhrak | skóre: 31 | blog: pato
    Rozbalit Rozbalit vše Re: Jak na kontrolu načtení souboru

    Podla mojho nazoru rovno otestovat na citanie a to tak v logickej nadvaznosti na spravu v pripade nemoznosti nacitania daneho suboru a najma na fakt, ze overenie existencie suboru este nic nevravi o moznosti ho citat, co je v tomto pripade klucove. Vid:

    patrik@domov:~$ stat /etc/shadow
      File: ‘/etc/shadow’
      Size: 1009      	Blocks: 8          IO Block: 4096   regular file
    Device: 12h/18d	Inode: 112385      Links: 1
    Access: (0640/-rw-r-----)  Uid: (    0/    root)   Gid: (   42/  shadow)
    Access: 2013-09-06 10:12:39.997458015 +0100
    Modify: 2013-09-06 10:12:39.997458015 +0100
    Change: 2013-09-06 10:12:40.005458028 +0100
     Birth: -
    patrik@domov:~$ groups 
    patrik lp cdrom floppy sudo audio dip video plugdev netdev
    patrik@domov:~$ echo $UID 
    1000
    patrik@domov:~$ test -e /etc/shadow
    patrik@domov:~$ echo $?
    0
    patrik@domov:~$ test -r /etc/shadow
    patrik@domov:~$ echo $?
    1
    
    Tarmaq avatar 11.9.2013 12:06 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Jak na kontrolu načtení souboru
    ano, mas samozrejme pravdu, blbe jsem pochopil zadani..
    Don't panic!
    11.9.2013 21:21 mkmm
    Rozbalit Rozbalit vše Re: Jak na kontrolu načtení souboru
    V bashi je primo test na citelnost souboru, takze by melo stacit
    test -r soubor && . soubor || { echo "Nnenacteno"; exit 1; }

    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.