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 00:11 | Nová verze

    Open source modální textový editor Helix, inspirovaný editory Vim, Neovim či Kakoune, byl vydán ve verzi 25.07. Přehled novinek se záznamy terminálových sezení v asciinema v oznámení na webu. Detailně v CHANGELOGu na GitHubu.

    Ladislav Hagara | Komentářů: 0
    včera 20:44 | IT novinky

    Americký výrobce čipů Nvidia získal od vlády prezidenta Donalda Trumpa souhlas s prodejem svých pokročilých počítačových čipů používaných k vývoji umělé inteligence (AI) H20 do Číny. Prodej těchto čipů speciálně upravených pro čínský trh by tak mohl být brzy obnoven, uvedla firma na svém blogu. Americká vláda zakázala prodej v dubnu, v době eskalace obchodního sporu mezi oběma zeměmi. Tehdy to zdůvodnila obavami, že by čipy mohla využívat čínská armáda.

    Ladislav Hagara | Komentářů: 3
    včera 17:22 | Nová verze

    3D software Blender byl vydán ve verzi 4.5 s prodlouženou podporou. Podrobnosti v poznámkách k vydání. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 0
    14.7. 22:22 | Komunita

    Open source webový aplikační framework Django slaví 20. narozeniny.

    Ladislav Hagara | Komentářů: 0
    14.7. 16:11 | Komunita

    V Brestu dnes začala konference vývojářů a uživatelů linuxové distribuce Debian DebConf25. Na programu je řada zajímavých přednášek. Sledovat je lze online.

    Ladislav Hagara | Komentářů: 0
    14.7. 11:33 | IT novinky

    Před 30 lety, tj. 14. července 1995, se začala používat přípona .mp3 pro soubory s hudbou komprimovanou pomocí MPEG-2 Audio Layer 3.

    Ladislav Hagara | Komentářů: 26
    14.7. 10:55 | IT novinky

    Výroba 8bitových domácích počítačů Commodore 64 byla ukončena v dubnu 1994. Po více než 30 letech byl představen nový oficiální Commodore 64 Ultimate (YouTube). S deskou postavenou na FPGA. Ve 3 edicích v ceně od 299 dolarů a plánovaným dodáním v říjnu a listopadu letošního roku.

    Ladislav Hagara | Komentářů: 20
    13.7. 17:55 | Zajímavý projekt

    Společnost Hugging Face ve spolupráci se společností Pollen Robotics představila open source robota Reachy Mini (YouTube). Předobjednat lze lite verzi za 299 dolarů a wireless verzi s Raspberry Pi 5 za 449 dolarů.

    Ladislav Hagara | Komentářů: 17
    11.7. 16:44 | Komunita

    Dnes v 17:30 bude oficiálně vydána open source počítačová hra DOGWALK vytvořena v 3D softwaru Blender a herním enginu Godot. Release party proběhne na YouTube od 17:00.

    Ladislav Hagara | Komentářů: 3
    11.7. 14:55 | Humor

    McDonald's se spojil se společností Paradox a pracovníky nabírá také pomocí AI řešení s virtuální asistentkou Olivii běžící na webu McHire. Ian Carroll a Sam Curry se na toto AI řešení blíže podívali a opravdu je překvapilo, že se mohli přihlásit pomocí jména 123456 a hesla 123456 a získat přístup k údajům o 64 milionech uchazečů o práci.

    Ladislav Hagara | Komentářů: 16
    Jaký je váš oblíbený skriptovací jazyk?
     (59%)
     (26%)
     (7%)
     (3%)
     (1%)
     (1%)
     (4%)
    Celkem 399 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník

    Dotaz: Jak na kontrolu načtení souboru

    8.9.2013 19:00 Marky
    Jak na kontrolu načtení souboru
    Přečteno: 487×
    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.