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 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

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

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

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

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 6
    včera 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

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

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Nová verze

    Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Nová verze

    Byla vydána nová verze 6.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.14.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána nová verze 30.0.0 frameworku pro vývoj multiplatformních desktopových aplikací pomocí JavaScriptu, HTML a CSS Electron (Wikipedie, GitHub). Chromium bylo aktualizováno na verzi 124.0.6367.49, V8 na verzi 12.4 a Node.js na verzi 20.11.1. Electron byl původně vyvíjen pro editor Atom pod názvem Atom Shell. Dnes je na Electronu postavena celá řada dalších aplikací.

    Ladislav Hagara | Komentářů: 2
    včera 04:11 | Nová verze

    Byla vydána nová verze 9.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 220 vývojářů. Provedeno bylo více než 2 700 commitů. Přehled úprav a nových vlastností v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (72%)
     (9%)
     (2%)
     (17%)
    Celkem 737 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    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.