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í
×
    včera 23:22 | IT novinky

    Před 60 lety, 1. května 1964, byl představen programovací jazyk BASIC (Beginners' All-purpose Symbolic Instruction Code).

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

    Byla vydána nová verze 12.0 minimalistické linuxové distribuce (JeOS, Just enough Operating System) pro Kodi (dříve XBMC) a multimediálního centra LibreELEC (Libre Embedded Linux Entertainment Center). Jedná se o fork linuxové distribuce OpenELEC (Open Embedded Linux Entertainment Center). LibreELEC 12.0 přichází s Kodi 21.0 "Omega".

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

    Microsoft vydal novou velkou aktualizaci 2404.23 v září 2019 pod licencí SIL Open Font License (OFL) zveřejněné rodiny písma Cascadia Code pro zobrazování textu v emulátorech terminálu a vývojových prostředích.

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

    OpenTofu, tj. svobodný a otevřený fork Terraformu vzniknuvší jako reakce na přelicencování Terraformu z MPL na BSL (Business Source License) společností HashiCorp, bylo vydáno ve verzi 1.7.0. Přehled novinek v aktualizované dokumentaci. Vypíchnout lze State encryption.

    Ladislav Hagara | Komentářů: 0
    30.4. 23:55 | Humor

    Spouštět webový prohlížeč jenom kvůli nákupu kávy? Nestačí ssh? Stačí: ssh terminal.shop (𝕏).

    Ladislav Hagara | Komentářů: 7
    30.4. 18:11 | Nová verze

    Yocto Project byl vydán ve verzi 5.0. Její kódové jméno je Scarthgap. Yocto Project usnadňuje vývoj vestavěných (embedded) linuxových systémů na míru konkrétním zařízením. Cílem projektu je nabídnou vývojářům vše potřebné. Jedná se o projekt Linux Foundation.

    Ladislav Hagara | Komentářů: 0
    30.4. 17:56 | Nová verze

    Operační systém 9front, fork operačního systému Plan 9, byl vydán v nové verzi "do not install" (pdf). Více o 9front v FQA.

    Ladislav Hagara | Komentářů: 0
    30.4. 13:11 | Nová verze

    Svobodná webová platforma pro sdílení a přehrávání videí PeerTube (Wikipedie) byla vydána v nové verzi 6.1. Přehled novinek i s náhledy v oficiálním oznámení a na GitHubu. Řešeny jsou také 2 bezpečnostní chyby.

    Ladislav Hagara | Komentářů: 3
    30.4. 12:33 | Zajímavý software

    Lennart Poettering na Mastodonu představil utilitu run0. Jedná se o alternativu k příkazu sudo založenou na systemd. Bude součástí systemd verze 256.

    Ladislav Hagara | Komentářů: 26
    29.4. 23:22 | Nová verze

    Hudební přehrávač Amarok byl vydán v nové major verzi 3.0 postavené na Qt5/KDE Frameworks 5. Předchozí verze 2.9.0 vyšla před 6 lety a byla postavená na Qt4. Portace Amaroku na Qt6/KDE Frameworks 6 by měla začít v následujících měsících.

    Ladislav Hagara | Komentářů: 13
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (0%)
     (0%)
     (100%)
     (0%)
    Celkem 1 hlasů
     Komentářů: 0
    Rozcestník

    Dotaz: Pomoc s prvním skriptem

    29.12.2006 21:29 Jack Hokus | skóre: 34 | blog: LostHeaven
    Pomoc s prvním skriptem
    Přečteno: 133×
    Ahoj,

    mám následující problém. Potřeboval bych pomoct s vytvořením skriptu, který by mi pomohl "uklidit" knihu odeslané pošty.

    Jedná se o tabulku, která bylá původně zamýšlena tak, že na každé stránce byla jedna tabulka po 30 řádcích, na začátku hlavička konci součet.

    Vše bylo navrženo tak, aby když to celé vytisknete a založíte k archivaci byl na každém listu jedna tabulka s hlavičkou na začátku a součtem na konci.

    Jenomže se u toho vystřídala spousta lidí a výsledkem je totální zmatek.

    Potřeboval bych sestavit kolonu příkazů, která by dělala následující.

    Nejprve dostat tu sadu tabulek do nějakého ke zpracování vhodného tvaru. Ale pozor, struktura jednollivých řádků musí zůstat nedotčená.

    Jednotlivé řádky jsou složeny z data, jména příjemce,jeho adresy, obsahu spisu a poznámky Potom vypsat obsah tohoto souboru tak aby výstupem bylo třicet řádek. Výstup si pak zkopíruju do příslušné tabulky.

    Nechci nikomu hodit na krk svou vlastní práci. Vím, co chci, ale nevím, jak toho dosáhnout. Nikdy jsem žádny skript nepsal. Budu rád za jakoukoliv radu.

    S pozdravem Jack Hokus
    http://www.jackhokus.cz/

    Odpovědi

    29.12.2006 23:03 Andrej Herceg | skóre: 43
    Rozbalit Rozbalit vše Re: Pomoc s prvním skriptem
    Formát (typ súboru) tej pôvodnej tabuľky je aký?
    29.12.2006 23:42 Jack Hokus | skóre: 34 | blog: LostHeaven
    Rozbalit Rozbalit vše Re: Pomoc s prvním skriptem
    Dobrý večer,

    tabulka je vytvořená v MS Excelu, takže .xls.

    Děkuji za odpověď

    Jack Hokus
    http://www.jackhokus.cz/
    29.12.2006 23:51 Andrej Herceg | skóre: 43
    Rozbalit Rozbalit vše Re: Pomoc s prvním skriptem
    Aby sa to dalo spracovávať skriptom, muselo by to byť v nejakom (najlepšie textovom) formáte. Jedna z možností je uložiť to ako .csv (treba ale zvoliť vhodný oddeľovač stĺpcov [nejaký znak, ktorý v tých údajoch nie je použitý]).
    30.12.2006 00:07 Jack Hokus | skóre: 34 | blog: LostHeaven
    Rozbalit Rozbalit vše Co jsem zatím zkoušel
    Dobrý večer,

    původně excelovou tabulku jsem otevřel v OpenOffice a přes Soubor, Uložit jako záložka typ souboru a v ní export textu (nastavitelný) jsem si tabulku převedl na textový soubor.

    Tento textový soubor jsem pomocí příkazu: $ split --lines 30 pokus2.txt rozdělil na jednotlivé soubory po 30 řádcích (jedna strana v knize pošty má mít 30 řádků).

    Z malé části to tedy funguje, myslím tím převedení tabulky na textový soubor, a rozdělení souboru na části po 30 řádcích

    Ještě musím přijít na to, jak odfiltrovat nežádoucí řády (záhlaví a zápatí jednotlivých tabulek, prázdné řádky),tak aby výsledkem byl soubor s obsahem v tomto tvaru:
    1.12. Karel Janota Široká 15 772 00 Olomouc oběžník 1 12
    Toto celé má být na jednom řádku, čísla na konci znamenají 1 ks známky za 12 Kč

    To je zatím vše. Zítra na to sednu. Zatím dobrou noc a poděkování všem předsilvestrovským sovám.

    Jack Hokus
    http://www.jackhokus.cz/
    30.12.2006 00:29 Andrej Herceg | skóre: 43
    Rozbalit Rozbalit vše Re: Co jsem zatím zkoušel
    Ak sú tam iba medzery, bude ťažké určiť, čo patrí do akého stĺpca. Preto je lepšie použiť csv (comma-separated values).

    Na odfiltrovanie prázdnych riadkov (alebo obsahujúcich iba medzery) sa dá použiť
    grep -vx '[[:space:]]*' pokus2.txt
    (samozrejme ešte pred rozdelení súboru).

    Na odstránenie hlavičiek a pätičiek sa dá použiť podobný postup (závisí od toho, čo takéto riadky obsahujú).
    30.12.2006 16:45 Jack Hokus | skóre: 34 | blog: LostHeaven
    Rozbalit Rozbalit vše Re: Co jsem zatím zkoušel
    Dobrý den,

    vámi uvedený postup funguje perfektně. Prošel jsem si ho kus po kusu, abych pochopil jak jste to sestavil.
    grep  Hledá řádky, které odpovídají zadanému výrazu 
    v     Vypisuje řádky, které neodpovídají zadanému vzoru 
    x     Řádek je vypsán pouze tehdy, pokud celý odpovídá zadanému vzoru
    Až sem tomu rozumím, ale nepochopil jsem tuto část
     '[[:space:]]*'
    Přesněji, odhaduju, že tímto jste zadal, že má hledat prázdné řádky, ale nic víc.

    Asi se teď chytáte za hlavu nad mou natvrdlostí, protože nechápu něco tak jednoduchécho, ale opravdu jsem nikdy nenapsal žádný skript, ani se nepokoušel programovat tak zatím na celou věc hledím se stejným pochopením jako politik na lopatu.

    Moc děkuju za dosavadní trpělivost a přeju pěknou sobotu

    Jack Hokus
    http://www.jackhokus.cz/
    30.12.2006 16:56 Pavel1 | skóre: 33
    Rozbalit Rozbalit vše Re: Co jsem zatím zkoušel
    Hledej "regulární výrazy". Najdeš toho mraky. Toto konkrétně znamená žádná, nebo jedna, nebo více mezer (stejný zápis: ' *' ).
    30.12.2006 17:03 Andrej Herceg | skóre: 43
    Rozbalit Rozbalit vše Re: Co jsem zatím zkoušel
    [:space:] nemusí byť len ' '
    30.12.2006 18:05 Pavel1 | skóre: 33
    Rozbalit Rozbalit vše Re: Co jsem zatím zkoušel
    Jo, jasně, já jsem to hooodně zjednodušil, až moc ...
    30.12.2006 17:00 Andrej Herceg | skóre: 43
    Rozbalit Rozbalit vše Re: Co jsem zatím zkoušel
    [:space:] znamená nejaký typ medzery (normálna medzera, tab...)

    []* je 0 a viac výskytov

    Teda celé to je (aj s tým -x), riadky, kde je 0 a viac medzier

    Ak hlavičky a pätičky nemajú na začiatku dátum, môžu sa odfiltrovať napr.
    egrep '^[[:space:]]*[[:digit:]]+.[[:digit:]]+'
    teda: na začiatku radku môžu byť medzery (keďže je tam * tak aj nemusia), potom aspoň jedna číslica (to je to +), bodka a zase aspoň jedna číslica
    30.12.2006 17:05 Andrej Herceg | skóre: 43
    Rozbalit Rozbalit vše Re: Co jsem zatím zkoušel
    Na vyhodenie tých prázdnych riadkov je možno lepšie
    grep '[^[:space:]]' a.txt
    to vypíše riadky, ktoré obsahujú aj iné znaky ako medzera
    31.12.2006 10:30 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: Co jsem zatím zkoušel
    Zdravím,

    zkusil jsem při exportu do CSV nastavit jako oddělovač tabelátor (zdá se mi to jistější než čárka). No a výsledný soubor "janota.csv" jsem pak zpracoval tímhle:
    #!/usr/bin/env python
    # -*- coding: utf-8
    cell_names = ['Jméno', 'Ulice', 'PSČ', 'Město', 'Zásilka']
    N = 5
    count = 0
    for line in file('janota.csv'):
        line = line.strip()
        cells = line.split('\t')
        if len(cells) != len(cell_names): continue
        count += 1
        if count > N:
            print
            count = 1
        print count
        for name, cell in zip(cell_names, cells):
            cell = cell.replace('"', '')
            print name, cell
    
    Jednotlivé buňky mám pojmenované a pokud počet buněk v řádku nesouhlasí s počtem jmen, tak celý řádek zahodím (to budou asi ty hlavičky, patičky, prázdné řádky atd.). Dále se jednotlivé řádky číslují a rozdělují do N-tic. Výstup u každého řádku vypadá zhruba takto:
    3
    Jméno Karel Janota
    Ulice Široká 15
    PSČ 772 00
    Město Olomouc
    Zásilka Oběžník
    
    V této podobě je to samozřejmě k ničemu, je to pouze ukázka principů pro inspiraci. S jednotlivými buňkami se dá dělat ledacos.

    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.