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:22 | Bezpečnostní upozornění

    Byly zveřejněny informace o kritické zranitelnost CVE-2025-55182 s CVSS 10.0 v React Server Components. Zranitelnost je opravena v Reactu 19.0.1, 19.1.2 a 19.2.1.

    Ladislav Hagara | Komentářů: 0
    dnes 02:44 | Komunita

    Bylo rozhodnuto, že nejnovější Linux 6.18 je jádrem s prodlouženou upstream podporou (LTS). Ta je aktuálně plánována do prosince 2027. LTS jader je aktuálně šest: 5.10, 5.15, 6.1, 6.6, 6.12 a 6.18.

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

    Byla vydána nová stabilní verze 3.23.0, tj. první z nové řady 3.23, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 18:11 | Nová verze

    Byla vydána verze 6.0 webového aplikačního frameworku napsaného v Pythonu Django (Wikipedie). Přehled novinek v poznámkách k vydání.

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

    Po více než 7 měsících vývoje od vydání verze 6.8 byla vydána nová verze 6.9 svobodného open source redakčního systému WordPress. Kódové jméno Gene bylo vybráno na počest amerického jazzového klavíristy Gene Harrise (Ray Brown Trio - Summertime).

    Ladislav Hagara | Komentářů: 11
    včera 05:11 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za listopad (YouTube).

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

    Google Chrome 143 byl prohlášen za stabilní. Nejnovější stabilní verze 143.0.7499.40 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 13 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    2.12. 19:33 | Nová verze

    Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu dosáhl 3,2 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 26,42 %. Procesor AMD používá 66,72 % hráčů na Linuxu.

    Ladislav Hagara | Komentářů: 0
    2.12. 15:22 | IT novinky

    Canonical oznámil (YouTube), že nově nabízí svou podporu Ubuntu Pro také pro instance Ubuntu na WSL (Windows Subsystem for Linux).

    Ladislav Hagara | Komentářů: 0
    2.12. 13:11 | IT novinky

    Samsung představil svůj nejnovější chytrý telefon Galaxy Z TriFold (YouTube). Skládačka se nerozkládá jednou, ale hned dvakrát, a nabízí displej s úhlopříčkou 10 palců. V České republice nebude tento model dostupný.

    Ladislav Hagara | Komentářů: 10
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (19%)
     (18%)
     (23%)
     (15%)
     (25%)
     (16%)
     (18%)
    Celkem 426 hlasů
     Komentářů: 18, poslední 2.12. 18:34
    Rozcestník

    Dotaz: Jak na kontrolu načtení souboru

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