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 01:44 | Komunita

    Spotify prostřednictvím svého FOSS fondu rozdělilo 70 000 eur mezi tři open source projekty: FFmpeg obdržel 30 000 eur, Mock Service Worker (MSW) obdržel 15 000 eur a Xiph.Org Foundation obdržela 25 000 eur.

    Ladislav Hagara | Komentářů: 1
    včera 18:11 | Zajímavý software

    Nazdar! je open source počítačová hra běžící také na Linuxu. Zdrojové kódy jsou k dispozici na GitHubu. Autorem je Michal Škoula.

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

    Po více než třech letech od vydání verze 1.4.0 byla vydána nová verze 1.5.0 správce balíčků GNU Guix a na něm postavené stejnojmenné distribuci GNU Guix. S init systémem a správcem služeb GNU Shepherd. S experimentální podporou jádra GNU Hurd. Na vývoji se podílelo 744 vývojářů. Přibylo 12 525 nových balíčků. Jejich aktuální počet je 30 011. Aktualizována byla také dokumentace.

    Ladislav Hagara | Komentářů: 5
    včera 15:44 | Zajímavý software

    Na adrese gravit.huan.cz se objevila prezentace minimalistického redakčního systému GravIT. CMS je napsaný ve FastAPI a charakterizuje se především rychlým načítáním a jednoduchým ukládáním obsahu do textových souborů se syntaxí Markdown a YAML místo klasické databáze. GravIT cílí na uživatele, kteří preferují CMS s nízkými nároky, snadným verzováním (např. přes Git) a možností jednoduchého rozšiřování pomocí modulů. Redakční

    … více »
    2012 | Komentářů: 0
    včera 12:55 | Zajímavý software

    Tým Qwen (Alibaba Cloud) uvolnil jako open-source své modely Qwen3‑TTS pro převádění textu na řeč. Sada obsahuje modely VoiceDesign (tvorba hlasu dle popisu), CustomVoice (stylizace) a Base (klonování hlasu). Modely podporují syntézu deseti různých jazyků (čeština a slovenština chybí). Stránka projektu na GitHubu, natrénované modely jsou dostupné na Hugging Face. Distribuováno pod licencí Apache‑2.0.

    NUKE GAZA! 🎆 | Komentářů: 0
    včera 01:11 | Nová verze

    Svobodný citační manažer Zotero (Wikipedie, GitHub) byl vydán v nové major verzi 8. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    22.1. 16:55 | Nová verze

    Byla vydána verze 1.93.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    22.1. 14:00 | Komunita

    Svobodný operační systém ReactOS (Wikipedie), jehož cílem je kompletní binární kompatibilita s aplikacemi a ovladači pro Windows, slaví 30. narozeniny.

    Ladislav Hagara | Komentářů: 8
    22.1. 11:00 | IT novinky

    Společnost Raspberry Pi má nově v nabídce flash disky Raspberry Pi Flash Drive: 128 GB za 30 dolarů a 256 GB za 55 dolarů.

    Ladislav Hagara | Komentářů: 2
    22.1. 10:22 | Zajímavý software

    Technologie Skip pro multiplatformní mobilní vývoj, která umožňuje vývojářům vytvářet iOS a Android aplikace z jediné Swift a SwiftUI kódové základny, se s vydáním verze 1.7 stala open source.

    Ladislav Hagara | Komentářů: 6
    Které desktopové prostředí na Linuxu používáte?
     (17%)
     (6%)
     (0%)
     (10%)
     (21%)
     (3%)
     (5%)
     (2%)
     (11%)
     (35%)
    Celkem 585 hlasů
     Komentářů: 17, poslední 22.1. 15:24
    Rozcestník

    Dotaz: md5sum a standardní výstup

    4.12.2005 21:30 diverman | skóre: 32 | blog: život s tučňáčkem
    md5sum a standardní výstup
    Přečteno: 439×
    Ahoj přátelé, tvořím skript pro hromadné zpracování kontrolních součtů md5sum. Příkaz
    md5sum -c -v MD5SUM
    vypíše:
    test1.txt   OK
    test2.txt   OK
    test3.txt   OK
    test4.txt   CHYBNÝ
    
    To je v pořádku. Teď chci tento výstup zapsat do souboru MD5SUM_RESULT, abych mohl výsledky dále zpracovávat:
    md5sum -c -v MD5SUM > MD5SUM_RESULT
    Ale vzniklý soubor MD5SUM_RESULT je prázdný. Zkouším to tedy jinak:
    echo `md5sum -c -v MD5SUM` > MD5SUM_RESULT
    Soubor MD5SUM_RESULT je opět prázdný... Kdybyste mě někdo nakopnul, co dělám špatně...
    díky Pavel
    deb http://ftp.cz.debian.org/debian jessie main contrib non-free

    Odpovědi

    4.12.2005 21:40 Michal Karas | skóre: 45 | blog: /dev/random
    Rozbalit Rozbalit vše Re: md5sum a standartní výstup
    Ahoj, zkus:
    md5sum -c -v MD5SUM 2> MD5SUM_RESULT
    4.12.2005 21:55 diverman | skóre: 32 | blog: život s tučňáčkem
    Rozbalit Rozbalit vše Re: md5sum a standartní výstup
    Díky moc, to je vono!
    deb http://ftp.cz.debian.org/debian jessie main contrib non-free
    4.12.2005 22:02 Michal Karas | skóre: 45 | blog: /dev/random
    Rozbalit Rozbalit vše Re: md5sum a standartní výstup
    Ale nechápu proč to md5sum posílá na stderr. V Arch Linuxu se přitom chová korektně.
    4.12.2005 22:16 diverman | skóre: 32 | blog: život s tučňáčkem
    Rozbalit Rozbalit vše Re: md5sum a standartní výstup
    Já to dělám v Debianu a fakt je to do stderr. Taky mě to překvapilo. Teď ještě musím z toho vyparsovat soubory OK a soubory neeOK :-(
    deb http://ftp.cz.debian.org/debian jessie main contrib non-free
    4.12.2005 22:32 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: md5sum a standartní výstup
    V SuSE 10.0 to posílá také na standardní výstup
      mike@lion:~/tmp> md5sum --version
      md5sum (GNU coreutils) 5.3.0
      Written by Ulrich Drepper and Scott Miller.
    
    Jakou verzi máte vy?
    David Watzke avatar 4.12.2005 22:42 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: md5sum a standartní výstup
    Gentoo / amd64, stejná verze, taky OK.
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    4.12.2005 22:55 diverman | skóre: 32 | blog: život s tučňáčkem
    Rozbalit Rozbalit vše Re: md5sum a standartní výstup
    Heh, no v té mé ani přepínač --version nefunguje. Takže asi mám nějakou prehistorickou verzi. (Debian Sarge)
    deb http://ftp.cz.debian.org/debian jessie main contrib non-free
    4.12.2005 22:58 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: md5sum a standartní výstup
    Tak to nejspíš nebude GNU verze… :-)
    4.12.2005 23:05 diverman | skóre: 32 | blog: život s tučňáčkem
    Rozbalit Rozbalit vše Re: md5sum a standartní výstup
    Hmmm čekal bych, že program jako md5sum instalovaný z "pravého debiálního" (heh to je teda výraz :-) ) mirroru bude GNU.
    deb http://ftp.cz.debian.org/debian jessie main contrib non-free
    5.12.2005 10:34 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: md5sum a standartní výstup
    Pro inspiraci jsem se pokusil něco podobného udělat.

    Následující program projde všechny soubory v daném adresáři, u každého vypočítá md5sum a výsledky uloží do XML souboru. Formát XML jsem vybral záměrně, aby bylo možné uložit stromovou strukturu, kdybych procházel adresář rekurzivně (což prozatím nedělám). Také se rozumně vypořádá i s podivnými názvy souborů. Navíc ho lze "hezky" zobrazovat v prohlížeči ;-)

    Při dalším spuštění program otevře XML soubor a porovná kontrolní součty se skutečností. Vypíše, které soubory se změnily.

    Chtělo by to ještě přidat kontrolu chybových stavů, zjišťování, který soubor přibyl či ubyl, ale o to tu, myslím, nešlo.
    import os, sys, md5
    from elementtree.ElementTree import Element, SubElement, ElementTree, dump
    
    def CalcMD5(filename):
      buffersize = 1000000
      sum = md5.new()
      f = open(filename)
      while True:
        data = f.read(buffersize)
        if not data: break
        sum.update(data)
      f.close()
      return sum.hexdigest()
    
    
    def StoreChecksums(basedir, xmlname):
    
      root = Element("checksums")
      Files = SubElement(root, "Files")
      for name in os.listdir(basedir):
        name_fullpath = os.path.join(basedir, name)
        if not os.path.isfile(name_fullpath): continue
        md5sum = CalcMD5(name_fullpath)
        elem_file = SubElement(Files, "file") 
        elem_file.set("name", name_fullpath)
        elem_file.set("md5sum", md5sum)
     
      tree = ElementTree(root)
      dump(root)
      tree.write(xmlname, encoding="utf-8")
    
    def CheckChecksums(basedir, xmlname):
      root = ElementTree(file=xmlname)
      files_old = root.find('Files')
      for file_old in files_old:
        name = file_old.get('name')
        md5sum_old = file_old.get('md5sum')
        md5sum_new = CalcMD5(os.path.join(basedir, name))
        if not md5sum_old == md5sum_new:
          print 'File', name, 'has changed!'
    
    ###############################  MAIN #############
    
    xmlname = 'md5sums.xml'
    basedir = '.'
    
    if not os.path.exists(xmlname):
      print 'md5sums have not been calculated yet. Creating', xmlname
      StoreChecksums(basedir, xmlname)
      sys.exit(0)
    
    CheckChecksums(basedir, xmlname)
    

    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.