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 18:11 | Zajímavý projekt

    Krabix.cz je online 3D konfigurátor krabiček pro 3D tisk s exportem do STL. Běží přímo v prohlížeči. Nic se neposílá na server.

    Ladislav Hagara | Komentářů: 0
    dnes 17:00 | Komunita

    Nadace Open Home Foundation spustila veřejnou preview verzi komunitní databáze zařízení pro Home Assistant. Má fungovat jako „Wikipedie pro chytrá zařízení".

    Ladislav Hagara | Komentářů: 0
    dnes 15:22 | Komunita

    Na stránce nového panelu Firefoxu přibudou nové widgety. Například denně aktualizována interaktivní křížovka.

    Ladislav Hagara | Komentářů: 0
    dnes 14:11 | Zajímavý projekt

    PGSimCity (GitHub) je webová 3D vizualizace vnitřního fungování databázového systému PostgreSQL v podobě města. Vytvořena pomocí umělé inteligence.

    Ladislav Hagara | Komentářů: 2
    dnes 03:33 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04-2.0 a 24.04-1.4. Nová verze 24.04-2.0 již počítá s výřezy pro fotoaparát (notch) a zaoblenými rohy displeje. Webový prohlížeče Morph přešel z Chromia 87 na Chromium 134. Do shellu Lomiri byl přidán editor snímků obrazovky.

    Ladislav Hagara | Komentářů: 0
    25.7. 14:22 | Bezpečnostní upozornění

    Byly zveřejněny informace o kritické zranitelnosti CVE-2026-64600 pojmenované RefluXFS (technické detaily) v XFS. Je tam již od verze Linuxu 4.11, tj. rok 2017. Jedná se o lokální eskalaci práv. Neprivilegovaný uživatel může editovat libovolný soubor, například klidně zrušit rootovské heslo v /etc/passwd. Videoukázka na Vimeo. V upstreamu je zranitelnost opravena.

    Ladislav Hagara | Komentářů: 5
    25.7. 13:46 | IT novinky

    OpenAI / ChatGPT má dnes výpadky (OpenAI Status, DownDetector).

    Ladislav Hagara | Komentářů: 0
    25.7. 13:00 | Komunita

    Poskytovatel hostingu svobodných/open-source projektů Codeberg po hlasování na valné hromadě vydal stanovisko k využívání LLM. Kvůli vytěžování infrastruktury a rostoucím cenám hardwaru, ale také hrozbám pro spolupráci v komunitě se k LLM staví kriticky. Nebude poskytovat hosting projektů vytvářených LLM agenty.

    |🇵🇸 | Komentářů: 2
    24.7. 14:22 | Zajímavý projekt

    Jack Dorsey představil (𝕏) open source týmovou komunikační platformu Buzz (GitHub) s cílem snížit závislost na Slacku a GitHubu.

    Ladislav Hagara | Komentářů: 21
    23.7. 23:00 | Nová verze

    Poštovní klient Thunderbird byl vydán v nové verzi 153 s kódovým názvem Meadow. Jedná se o ESR (Extended Support Release) vydání. Přehled novinek v poznámkách k vydání. Vylepšuje OAuth. Thundermail lze používat bez instalace doplňku.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (17%)
     (30%)
     (5%)
     (6%)
     (2%)
     (15%)
     (24%)
    Celkem 2239 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Administrace komentářů

    Jste na stránce určené pro řešení chyb a problémů týkajících se diskusí a komentářů. Můžete zde našim administrátorům reportovat špatně zařazenou či duplicitní diskusi, vulgární či osočující příspěvek a podobně. Děkujeme vám za vaši pomoc, více očí více vidí, společně můžeme udržet vysokou kvalitu AbcLinuxu.cz.

    Příspěvek
    11.2.2013 05:32 victor8 | skóre: 24 | blog: blog | Košice
    Rozbalit Rozbalit vše awk - vypis dvojrozmerneho pola do tvaru mriezky

    Zdravim nespavcov :) Uz dlhsi cas sa mordujem so spracovanim vstupnych dat v tvare:

    #attr2:attr3:attr6:attr5
    value2r1:value3r1:value6r1:value5r1
    #attr1:attr5:attr3:attr2:attr6
    value1r2:value5r2:value3r2:value2r2:value6r2
    value1r3:value5r3:value3r3:value2r3:value6r3
    #attr8:attr2:attr3:attr4:attr5:attr7:attr1
    #attr1:attr2:attr3:attr5
    value1r4:value2r4:value3r4:value5r4
    

    Pravidla pre tvar vstupneho suboru:

    • oddelovacom riadkov je LF
    • oddelovacom stlpcov je ":"
    • Subor sa sklada z blokov. Kazdy blok pozostava z riadka zacinajuceho mriezkou (obsahuje nazvy atributov), ktory moze (ale nemusi) byt nasledovany riadkami s hodnotami.
    • Poradie atributov sa v jednotlivych blokoch moze menit
    • Pocet a vyskyt atributov sa moze v jednotlivych blokoch menit

    Mojim cielom je dostat ich do tvaru:

    #attr1:attr2:attr3:attr4:attr5:attr6:attr7:attr8
    :value2r1:value3r1::value5r1:value6r1
    value1r2:value2r2:value3r2::value5r2:value6r2
    value1r3:value2r3:value3r3::value5r3:value6r3
    value1r4:value2r4:value3r4::value5r4
    

    pripadne:

    #attr1:attr2:attr3:attr4:attr5:attr6:attr7:attr8
    :value2-1:value3-1::value5-1:value6-1::
    value1-2:value2-2:value3-2::value5-2:value6-2::
    value1-3:value2-3:value3-3::value5-3:value6-3::
    value1-4:value2-4:value3-4::value5-4:::
    

    cize, vertikalne ich zarovnat a zoradit podla attrX, ktore budu vypisane v prvom riadku vystupneho suboru ako hlavicka. Cielom je predpriprava suboru na dalsie spracovanie tabulkovym kalkulatorom. Viacero dvojbodiek na konci riadka ako je ukazane vyssie nicomu neprekaza, ale ani nie je potrebnych. (vychadzam z toho ze ich povolenim by sa dal zjednodusit kod, a tabulkovy kalkulator ich aj tak odignoruje

    Zatial som dospel k nasledovnemu:

    awk '
    BEGIN { OFS=FS=":"; record=0 }
    
    # spracovanie zaciatku bloku; nazvy premennych ukladam do attr[i]
    {
     if ($0 ~ /^#/) {
      columns=split(substr($0,2),attr);
      #print"\n"; for(i in attr) print "attr["i"] = "attr[i]; #debug1
      next;
     }
    
    # spracovanie riadkov s hodnotami; hodnoty ukladam do r[record, attr[i]]
     record++;
     numvalues=split($0,value);
      for(i=1;i<=numvalues;i++) {
       r[record SUBSEP attr[i]]= value[i];
       print "r ["record", "attr[i]"] = "r[record SUBSEP attr[i]];  #debug2
      }
    }
    
    END{
     print "-----" #debug3
    
     for (combined in r) {
      #print combined;   #debug4
      num=split(combined, separate, SUBSEP);
      #print separate[1], separate[2], r[separate[1] SUBSEP separate[2]]; #debug5
      # a co dal?
    }
    
    
    

    Vystupom z debug2 je

    r [1, attr2] = value2r1
    r [1, attr3] = value3r1
    r [1, attr6] = value6r1
    r [1, attr5] = value5r1
    r [2, attr1] = value1r2
    r [2, attr5] = value5r2
    r [2, attr3] = value3r2
    r [2, attr2] = value2r2
    r [2, attr6] = value6r2
    r [3, attr1] = value1r3
    r [3, attr5] = value5r3
    r [3, attr3] = value3r3
    r [3, attr2] = value2r3
    r [3, attr6] = value6r3
    r [4, attr1] = value1r4
    r [4, attr2] = value2r4
    r [4, attr3] = value3r4
    r [4, attr5] = value5r4
    
    , takze verim, ze data mam rozparsovane a ulozene v asociativnom poli v poriadku.

    Problemom pre mna je, ako z tohoto vyskladat vysledny vypis. Potrebujem nejako rozumne toto pole vyiterovat, no napada ma len klasicka konstrukcia: dva zanorene fory, ktora mi tu ale fungovat nebude, kedze nemam dva pouzitelne indexy.

    Nejake napady? :)

    V tomto formuláři můžete formulovat svou stížnost ohledně příspěvku. Nejprve vyberte typ akce, kterou navrhujete provést s diskusí či příspěvkem. Potom do textového pole napište důvody, proč by měli admini provést vaši žádost, problém nemusí být patrný na první pohled. Odkaz na příspěvek bude přidán automaticky.

    Vaše jméno
    Váš email
    Typ požadavku
    Slovní popis
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.