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í
×
    včera 18:33 | Nová verze

    Vývojáři postmarketOS vydali verzi 25.12 tohoto před osmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell on Mobile, KDE Plasma Mobile, Phosh a Sxmo.

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

    Byla vydána nová verze 0.41.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.

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

    Byla vydána nová verze 5.5 (novinky) skriptovacího jazyka Lua (Wikipedie). Po pěti a půl letech od vydání verze 5.4.

    Ladislav Hagara | Komentářů: 0
    22.12. 23:44 | Nová verze

    Byla vydána nová verze 5.4.0 programu na úpravu digitálních fotografií darktable (Wikipedie). Z novinek lze vypíchnout vylepšenou podporu Waylandu. Nejnovější darktable by měl na Waylandu fungovat stejně dobře jako na X11.

    Ladislav Hagara | Komentářů: 0
    21.12. 05:00 | Nová verze

    Byla vydána beta verze Linux Mintu 22.3 s kódovým jménem Zena. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze, že nástroj Systémová hlášení (System Reports) získal mnoho nových funkcí a byl přejmenován na Informace o systému (System Information). Linux Mint 22.3 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 2
    21.12. 01:55 | Nová verze

    GNU Project Debugger aneb GDB byl vydán ve verzi 17.1. Podrobný přehled novinek v souboru NEWS.

    Ladislav Hagara | Komentářů: 0
    19.12. 17:22 | IT novinky

    Josef Průša oznámil zveřejnění kompletních CAD souborů rámů tiskáren Prusa CORE One a CORE One L. Nejsou vydány pod obecnou veřejnou licenci GNU ani Creative Commons ale pod novou licencí OCL neboli Open Community License. Ta nepovoluje prodávat kompletní tiskárny či remixy založené na těchto zdrojích.

    Ladislav Hagara | Komentářů: 14
    19.12. 17:00 | Komunita

    Nový CEO Mozilla Corporation Anthony Enzor-DeMeo tento týden prohlásil, že by se Firefox měl vyvinout v moderní AI prohlížeč. Po bouřlivých diskusích na redditu ujistil, že v nastavení Firefoxu bude existovat volba pro zakázání všech AI funkcí.

    Ladislav Hagara | Komentářů: 1
    19.12. 10:11 | IT novinky

    V pořadí šestou knihou autora Martina Malého, která vychází v Edici CZ.NIC, správce české národní domény, je titul Kity, bity, neurony. Kniha s podtitulem Moderní technologie pro hobby elektroniku přináší ucelený pohled na svět současných technologií a jejich praktické využití v domácích elektronických projektech. Tento knižní průvodce je ideální pro každého, kdo se chce podívat na současné trendy v oblasti hobby elektroniky, od

    … více »
    Ladislav Hagara | Komentářů: 11
    19.12. 03:11 | Komunita

    Linux Foundation zveřejnila Výroční zprávu za rok 2025 (pdf). Příjmy Linux Foundation byly 311 miliónů dolarů. Výdaje 285 miliónů dolarů. Na podporu linuxového jádra (Linux Kernel Project) šlo 8,4 miliónu dolarů. Linux Foundation podporuje téměř 1 500 open source projektů.

    Ladislav Hagara | Komentářů: 0
    Kdo vám letos nadělí dárek?
     (29%)
     (2%)
     (11%)
     (3%)
     (2%)
     (3%)
     (12%)
     (23%)
     (15%)
    Celkem 65 hlasů
     Komentářů: 16, poslední 22.12. 23:13
    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: 173×
    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.