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 12:33 | Nová verze

    Vývojáři KDE na Mastodonu oznámili vydání balíku aplikací KDE Gear 26.08. Přehled novinek i s náhledy a videi v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    dnes 04:11 | IT novinky

    Společnost PINE64 kvůli nedostatku a vysokým cenám DRAM a eMMC dočasně pozastavuje výrobu linuxových zařízení. Výroba zařízení jako PineTime, PineVoice a Pinecil pokračuje.

    Ladislav Hagara | Komentářů: 0
    dnes 02:55 | IT novinky

    Společnost Stripe se dohodla na akvizici společnosti OpenRouter. Za 7,5 miliardy dolarů.

    Ladislav Hagara | Komentářů: 0
    dnes 01:33 | Nová verze

    Byla vydána nová verze 1.27 programovacího jazyka Go (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 16:00 | Pozvánky

    V pátek 28. srpna se v Praze uskuteční již osmý Mobile Linux Hackday. Jako obvykle se potkáme v pražské pobočce SUSE v Karlíně na Křižíkově, takže kromě mobilního Linuxu je to tentokrát i příležitost přijít se podívat na nově zrekonstruované kanceláře. Začínáme v 10:00, ale dorazit můžete samozřejmě kdykoliv v průběhu dne. Setkáním vás provede David Heidelberg, vývojář GPU ovladačů v Mesa 3D a jeden z hlavních lidí české komunity kolem … více »

    lkocman | Komentářů: 0
    včera 14:11 | IT novinky

    Představen byl Raspberry Pi Compute Module 5 Programming Jig. Jedná se o zařízení umožňující připravit Compute Module 5 do plně funkčního stavu bez nutnosti použití dalších vstupně / výstupních desek. Podporuje automatizaci pomocí nástroje rpi-sb-provisioner. Podrobnosti v dokumentaci.

    Ladislav Hagara | Komentářů: 1
    včera 05:55 | IT novinky

    Hackeři ve Francii ukradli data více než půl milionu daňových poplatníků. Je to jeden z největších hackerských útoků v dějinách země. O útoku z konce června informovala až teď daňová správa. Teprve od pondělí dotčeným občanům zasílá e-maily s instrukcemi, jak postupovat dál. Hackeři se sice nedostanou k penězům dotyčných, hrozí ale věrohodné podvody. Hackeři získali třeba celá jména, údaje o rodinných příslušnících nebo také údaje o

    … více »
    Ladislav Hagara | Komentářů: 19
    včera 04:44 | IT novinky

    Společnost Framework představila nový Framework Laptop 12 s Intel Core Series 3, Thunderbolt 4, Wi-Fi 7, volitelnou čtečkou otisků prstů a podsvícenou klávesnicí s open-source firmwarem ZMK. Objednat lze s předinstalovanou Fedorou 44 KDE Plasma.

    Ladislav Hagara | Komentářů: 0
    18.8. 16:44 | Nová verze

    Byl vydán Mozilla Firefox 154.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 154 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    18.8. 14:33 | Nová verze

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 168 (pdf).

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (19%)
     (30%)
     (7%)
     (6%)
     (2%)
     (15%)
     (22%)
    Celkem 2445 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník
    Štítky: není přiřazen žádný štítek

    Dotaz: Hledám funkci pro shell

    29.11.2012 19:51 Jakub
    Hledám funkci pro shell
    Přečteno: 736×
    Hezná někdo takovou funkci která by fungovalav shellu?
    function file_size($size)
    {
    $filesizename = array(" Bytes", " KB", " MB", " GB", " TB", " PB", " EB", " ZB", " YB");
    return $size ? round($size/pow(1024, ($i = floor(log($size, 1024)))), 2) . $filesizename[$i] : '0 Bytes';
    }

    Řešení dotazu:


    Odpovědi

    Josef Kufner avatar 29.11.2012 20:02 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    A proč to v tom PHP nenapíšeš celé?
    Hello world ! Segmentation fault (core dumped)
    pepe_ avatar 30.11.2012 12:11 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell

    Proč označuješ řešení v PHP když je jasně dáno že to nemůže být v PHP ?

    29.11.2012 20:05 l4m4
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    file_size() {
    php -r '$filesizename = array(" Bytes", " KB", " MB", " GB", " TB", " PB", " EB", " ZB", " YB"); print '$1' ? round('$1'/pow(1024, ($i = floor(log('$1', 1024)))), 2) . $filesizename[$i] : "0 Bytes";'
    }
    
    pepe_ avatar 30.11.2012 12:09 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell

    On píše že nemá PHP tak proč tam cpeš PHP a proč je to jako řešení když to je nepravda ?

    30.11.2012 15:28 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Protože informaci že nemá PHP dodal 12 minut PO publikování výše uvedeného "řešení"? Kauzalita, kauzalita, Pepe_.
    29.11.2012 20:17 Jakub
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Potřeboval bych to přímo pro shell/bash, nemám chlapy na serveru php :-(
    29.11.2012 20:20 Kit
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Některé systémové příkazy to mají už vestavěny, např.
    df -h
    29.11.2012 20:29 Jakub
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Program df dělá ale zcela něco jiného než to, na co jsem se ptal.
    29.11.2012 20:38 l4m4
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Programy df, du, ls, etc. vypisují velikosti souborů, oddílů a podobných objektů. Čeho jiného proboha potřebuješ vypisovat velikost ve skriptu v shellu?

    Obecně potřebuješ-li počítat logaritmy, budeš k tomu stejně spouštět nějaký program. Situaci, kdy si někdo píše výpočet logaritmu v shellu pro zábavu, neberu v úvahu, protože v tom případě se neptá, jak to udělat.

    Takže to analogicky přepiš do libovolného skriptovacího jazyka, který tam k disposici je: perl, python (například), ruby, ... whatever.

    pepe_ avatar 30.11.2012 12:10 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell

    Proč označuješ řešení v PHP když je jasně dáno že to nemůže být v PHP ?

    pepe_ avatar 30.11.2012 12:11 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell

    Sorry Ty ne ...

    30.11.2012 13:51 l4m4
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Nic takového není v původním dotazu napsáno. Je tam napsáno, že se má zařídit, aby daná funkce fungovala v shellu.

    A nějaký intepret nebo jiný nástroj se stejně bude spouštět.
    29.11.2012 20:44 Kit
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Uživatelé se zde často ptají na hlouposti, které by vůbec nemuseli řešit, kdyby si přečetli manuál. Možná jenom potřebuješ vypsat velikost souborů v adresáři v nějakém příjemném formátu. To ale nevím. Jen mám pocit, jako kdyby ses ptal, jak máš zatloukat hřebíky šroubovákem.
    29.11.2012 21:14 Jakub
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Mám nějaký výsledek vždy v bytech, co potřebuji je to, že
    pokud je výsledek > 1 YB - vypsat výsledek v YB
    pokud je výsledek > 1 ZB a < 1 YB - vypsat výsledek v ZB
    pokud je výsledek > 1 EB a < 1 ZB - vypsat výsledek v EB
    pokud je výsledek > 1 PB a < 1 EB - vypsat výsledek v PB
    pokud je výsledek > 1 TB a < 1 PB - vypsat výsledek v TB
    pokud je výsledek > 1 GB a < 1 TB - vypsat výsledek v GB
    pokud je výsledek > 1 MB a < 1 GB - vypsat výsledek v MB
    pokud je výsledek > 1 KB a < 1 MB - vypsat výsledek v KB
    
    29.11.2012 21:44 l4m4
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    s() {
        p=BKMGTPEZY; a=${p:$(((${#1}-1)/3)):1}; if [ -z $a ]; then t=${1:0:$((${#p}*3+6-${#1}))}; else t=$(((${#1}-1)%3+1)); t=${1:0:$t}.${1:$t}; t=${t:0:4}; t=${t%.}; fi; t=$t${a:-Y}; echo ${t%B}B
    }
    
    29.11.2012 23:14 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    LOL :D Ale asi to není pro sílu dvou, co?
    29.11.2012 23:46 l4m4
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    To záleží na číselné soustavě, ve které je číslo zapsáno. Skriptu je to jedno, pro něj je číslo jakýkoli string ;)

    Takže když ho zapíšeš binárně (čtyřkově, dvaatřicítkově, ...), dá se jet i po mocninách 1024. Nechávám to jako cvičení čtenáři :o)
    1.12.2012 02:19 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Dobrá myšlenka, nechat algoritmus jak je a pro dosažení potřebného efektu přizpůsobit data.
    30.11.2012 00:05 Jakub
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    To mám spouštět z diskety? Flopárnu fakt nemám...
    30.11.2012 00:16 Kit
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Co to má společného s disketou? Je to řešení tvého problému, tak si nestěžuj.
    30.11.2012 00:22 Jakub
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Já si nestěžuju, ale neovládam ani shell, natož assembler ;-)
    30.11.2012 06:51 Kit
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Kde vidíš assembler?
    30.11.2012 00:23 Jakub
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Jinak moc díky za funkci...
    30.11.2012 00:36 Jakub
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Teď se dívám, že je výsledek je správný jen pokud očekávám výsledek jako decimal, tak to není nic pro mne, potřebuji převádět v binary. Tak že dotaz je stále aktuální :(
    30.11.2012 00:59 l4m4
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    V tom případě platí tato odpověď: http://www.abclinuxu.cz/poradna/programovani/show/369837#6

    Shell k tomu nemá prostředky. Jeho aritmetické funkce nezaručují, že sevůbec ty yoctobajty do integerové proměnné vejdou.
    30.11.2012 03:02 Jakub
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    A něl by ten konec funkce být takto?
    místo .....echo ${t%B}B takto .....echo ${t%B}b ?
    30.11.2012 03:02 Jakub
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    A neměl by ten konec funkce být takto?
    místo .....echo ${t%B}B takto .....echo ${t%B}b ?
    30.11.2012 11:25 l4m4
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Malé b je u nás bit, velké B je bajt.
    30.11.2012 17:33 Jakub
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Malé b je u nás bit, velké B je bajt.
    Ano, přesně tak... IHMO, předpokládám, že jsme stejného názoru a že 1MB == 1000KB, nikoli 1024.
    30.11.2012 17:52 Kit
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    V tom případě máš chybu v zadání.
    30.11.2012 17:55 Jakub
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    jj, máš pravdu, ale ta funkce neni moje, nevšiml jsem si...
    30.11.2012 18:03 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Nechci to rozviřovat, ale nemělo by tedy být 1MB == 1000kB ?
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    pavlix avatar 30.11.2012 18:13 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    To máš naprostou pravdu. Když už je někdo SI nazi, tak by měl ty značky alespoň dodržovat.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    30.11.2012 18:27 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Ono totiž odvozeno od Kelly-Bootle jednotky, tedy KB (1012B == 1KB), by to bylo 1MB == 1012KB.
    (Pro Sheldona: „to je vtip“.)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    30.11.2012 17:30 darkenik
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    Tak vseobecne shell nema vela prostriedkov. Nastastie na co nestaci shell, na to mame ine utility. Ak autor nema moznost to napisat v inom skritovacom jazyku. Tak na aritmeticke operacie mu odporucam utilitu bc a tento clanok
    3.12.2012 08:29 George O.
    Rozbalit Rozbalit vše Re: Hledám funkci pro shell
    A co perl nebo python? Pokud vim, tak na serverech jsou interprety na tyto dva jazyky nativne a takovy perl je php na teto urovni docela podobny. Urcite pouzitelnejsi jazyky pro tento pripad, nez bash :-)

    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.