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

    Finanční skupina Partners se stala minulou neděli obětí kybernetického útoku, při kterém se útočníci dostali k některým osobním údajům klientů. Společnost o tom informovala ve čtvrtek. Ujišťuje, že peníze klientů nejsou v ohrožení. „Kybernetický útok zasáhl část IT infrastruktury naší společnosti. Ihned po zjištění útoku jsme s pomocí externích bezpečnostních odborníků začali intenzivně pracovat na minimalizaci škod. Útočníci se

    … více »
    Ladislav Hagara | Komentářů: 0
    dnes 03:55 | IT novinky

    Americká technologická společnost Meta Platforms se dohodla, že zaplatí až zhruba 18 miliard dolarů (asi 373 miliard Kč) za mimosoudní urovnání sporu o závislosti dětí na sociálních sítích a provede významné změny pro jejich používání mladistvými. Téměř tři desítky států USA firmu v roce 2023 obvinily z toho, že sítě Facebook a Instagram vědomě navrhla tak, aby u dětí vyvolávaly závislost, a zatajovala tyto dopady před veřejností. Firma se

    … více »
    Ladislav Hagara | Komentářů: 1
    dnes 02:55 | Komunita

    Byl publikován aktuální přehled dění a novinek z vývoje Asahi Linuxu, tj. Linuxu pro Apple Silicon. Blíží se vydání podporující čipy M3. Vývojáře lze podpořit na GitHub Sponsors a Open Collective.

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

    Kancelářský balík LibreOffice byl vydán ve verzi 26.8. Mimo jiné vylepšuje typografii a kompatibilitu s formáty MS Office, více v poznámkách k vydání.

    |🇵🇸 | Komentářů: 0
    včera 14:55 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 26.8. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 6
    včera 11:44 | Nová verze

    Byla vydána nová verze 23.1.0, tj. první stabilní verze z nové řady 23.1.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools, Libc++, Polly a Flang.

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

    Google Chrome 152 byl prohlášen za stabilní. Nejnovější stabilní verze 152.0.7977.64 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Opraveno bylo 327 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.

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

    Před 35 lety, 25. srpna 1991, oznámil Linus Benedict Torvalds v diskusní skupině comp.os.minix, že vyvíjí (svobodný) operační systém (jako koníček, nebude tak velký a profesionální jako GNU) pro klony 386 (486), že začal v dubnu a během několika měsíců by mohl mít něco použitelného.

    Ladislav Hagara | Komentářů: 3
    25.8. 16:33 | IT novinky

    Apple představil čipy M6 a M5 Ultra, Mac mini s M6 nebo M5 Pro a Mac Studio s M5 Max nebo M5 Ultra. Fedora Asahi Remix zatím podporuje jenom M1 a M2.

    Ladislav Hagara | Komentářů: 22
    25.8. 14:11 | Komunita

    Firefox 157 přinese zapnutou podporu rastrového grafického formátu JPEG XL. Založena je na v Rustu napsané implementaci jxl-rs používané i v Chrome a Chromiu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (19%)
     (29%)
     (7%)
     (6%)
     (2%)
     (15%)
     (22%)
    Celkem 2503 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Dotaz: Soucet ascii hodnot retezce

    18.12.2006 11:49 MiHl | skóre: 9 | blog: Uvazovnik
    Soucet ascii hodnot retezce
    Přečteno: 553×
    Dobry den
    Vytvarim skript, ktery potrebuje pro svou praci secist ciselne hodnoty vsech znaku v jednom slove. Nepodarilo se mi ale najit jak ziskat ascii hodnotu jednoho znaku. Zkousel jsem koukat do manualu bashe a awk, ale nic jsem nenasel (mozna jsem spatne hledal). Neuspel jsem ani s ruznymi klicovymi slovy na google. Mohl by mi nekdo poradit?
    Dekuji

    Odpovědi

    18.12.2006 12:03 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Soucet ascii hodnot retezce

    Třeba tohle by mohlo fungovat

      val=`echo -n $char | od -A n -t d1`
    

    Případně na to můžete použít ještě aritmetickou expanzi nebo 'tr -d', abyste se zbavil přebytečných mezer.

    18.12.2006 12:23 eh
    Rozbalit Rozbalit vše Re: Soucet ascii hodnot retezce
    Cisty BASH:
    ---CUT---
    #!/bin/bash
    
    ord()
    {
            IFS= printf '%d' "'$1"
    }
    
    ordsum(){
            local in="$1"
            local size=${#in}
            local i=0
            local ret=0
    
            for (( i = 0; i <= $size; ++i ))
            do
                    (( ret += $( ord "${in:0:$i}" ) ))
            done
    
            printf -- '%d' $ret
    }
    
    ordsum "Hello, World!"
    
    exit 0
    ---CUT---
    
    18.12.2006 12:27 eh
    Rozbalit Rozbalit vše Re: Soucet ascii hodnot retezce
    Promin, jeste jsem to krapet upravil (pro jistotu)...
    ---CUT---
    #!/bin/bash
    
    ord()
    {
            printf -- '%d' "'$1"
    }
    
    ordsum()
    {
            local in="$1"
            local size=${#in}
            local i=0
            local ret=0
    
            for (( i = 0; i <= $size; ++i ))
            do
                    (( ret += $( ord "${in:0:$i}" ) ))
            done
    
            printf -- '%d' $ret
    }
    
    ordsum "Hello, World!"
    
    exit 0
    ---CUT---
    
    18.12.2006 12:41 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Soucet ascii hodnot retezce
    Ten příkaz ord asi nebude moc standardní záležitost, aspoň já ho ve svém systému nemám. Navíc vám to bude fungovat jen tehdy, pokud ten příkaz vypíše kód posledního znaku svého argumentu.
    18.12.2006 12:49 eh
    Rozbalit Rozbalit vše Re: Soucet ascii hodnot retezce
    Funkce ord() je napsana take v BASHi a je to tak trochu trik. Odpovida vsak POSIX norme; melo by to byt v poradku. Vy deklaraci te funkce nevidite? V systemu ji opravdu nenajdete...
    #!/bin/bash
    
    ord()
    {
            printf -- '%d' "'$1"
    }
    
    ord "A"   # vypise cislo 65
    
    Nerozumim vsak "ten prikaz ... atd." Vysvetlite, co mate na mysli? Mam takovy pocit, ze si nejak nerozumime... :-D
    18.12.2006 12:55 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Soucet ascii hodnot retezce
    Deklaraci funkce jsem přehlédl. Tak či onak vám to stejně nefunguje, vaše funkce vypíše kód prvního znaku řetězce násobený počtem znaků. Navíc je otázka, co s tím udělá UTF-8, ale pak to bylo především potřeba nejdřív upřesnit zadání…
    18.12.2006 13:05 eh
    Rozbalit Rozbalit vše Re: Soucet ascii hodnot retezce
    Bude fungovat spravne asi jen ASCII vstup (vcetne kontrolnich znaku atd). UTF8 asi fungovat nebude, alespon ne tak, jak mate na mysli. (Nevim to jiste, protoze jsem nikdy UTF8-enabled scripty v BASHi nepsal. Stalo by to za zkousku, ale momentalne me nenapada moc jak, kdyz UTF8 v systemu vubec nemam...)

    Navic, kolega se ptal na soucet "znaku" a ja predpokladal, ze znakem se zde mysli znak z mnoziny ASCII znaku. Pokud zadate vstup ve vicebytovem kodovani, dojde k tomu, ze to funkce ordsum() projde "znak po znaku", tedy "byte po bytu" a secte se to. Nezkousel jsem nikdy, jak se BASH zachova pri jinak nastavenych locales nez na "C". Jestli mate jak to vyzkouset, rad bych to vedel.
    18.12.2006 13:11 eh
    Rozbalit Rozbalit vše Re: Soucet ascii hodnot retezce
    Jezismarja, co jsem to za pitomce! Takovej pitomej preklep. Takto to bude fungovat (omlouvam se puvodnimu tazateli):
    ---CUT---
    #!/bin/bash
    
    ord()
    {
            printf -- '%d' "'$1"
    }
    
    ordsum()
    {
            local in="$1"
            local size=${#in}
            local i=0
            local ret=0
    
            for (( i = 0; i <= $size; ++i ))
            do
                    (( ret += $( ord "${in:$i:1}" ) ))
            done
    
            printf -- '%d' $ret
    }
    
    [[ $(ordsum "ABC") -eq $((65+66+67)) ]] && echo "FUNGUJE!"
    
    exit 0
    ---CUT---
    
    Fakticky se moc omlouvam... :-(
    18.12.2006 12:56 eh
    Rozbalit Rozbalit vše Re: Soucet ascii hodnot retezce
    Mam samozrejme na mysli tu druhou vasi vetu. Na tu prvni jsem snad uz odpovedel...
    18.12.2006 17:10 MiHl | skóre: 9 | blog: Uvazovnik
    Rozbalit Rozbalit vše Re: Soucet ascii hodnot retezce
    Diky vsem, za napady

    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.