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 07:00 | Nová verze

    Byla vydána nová stabilní verze 3.5 svobodného 3D softwaru Blender. Přehled novinek i s náhledy v oznámení o vydání a na YouTube.

    Ladislav Hagara | Komentářů: 0
    dnes 06:00 | Nová verze

    Po 5 měsících vývoje od vydání verze 6.1 byla vydána nová verze 6.2 svobodného open source redakčního systému WordPress. Kódové jméno Dolphy bylo vybráno na počest amerického jazzového altsaxofonisty, flétnisty a basklarinetisty Erica Dolphyho.

    Ladislav Hagara | Komentářů: 0
    včera 21:44 | IT novinky

    Josef Průša představil (YouTube) novou 3D tiskárnu Original Prusa MK4. Cena sestavené tiskárny je 27990 Kč. Cena stavebnice je 20990 Kč.

    Ladislav Hagara | Komentářů: 4
    včera 19:00 | Nová verze

    Turris OS, operační systém pro síťová zařízení Turris postavený na OpenWrt, byl vydán v nové verzi 6.3.0. Vývojáři upozorňují, že Netmetr byl nahrazen LibreSpeedem, viz příspěvek na blogu CZ.NIC.

    Ladislav Hagara | Komentářů: 0
    včera 17:33 | Bezpečnostní upozornění

    Byl vydán xorg-server 21.1.8 a xwayland 22.1.9 a 23.1.1. Řešena je zranitelnost CVE-2023-1393 využitelná k lokální eskalaci práv.

    Ladislav Hagara | Komentářů: 2
    včera 15:00 | Nová verze

    Byla vydána nová verze 10 integrovaného vývojového prostředí (IDE) Qt Creator. Podrobný přehled novinek v cgitu.

    Ladislav Hagara | Komentářů: 0
    28.3. 22:33 | Komunita

    Ubuntu Cinnamon bude od Ubuntu 23.04 oficiální odnoží Ubuntu (návrh, schválení).

    Ladislav Hagara | Komentářů: 4
    28.3. 19:22 | Nová verze

    Byla vydána nová major verze 5.0 účetního softwaru GnuCash (Wikipedie). Ve formátu Flatpak je již k dispozici na Flathubu.

    Ladislav Hagara | Komentářů: 0
    28.3. 18:33 | Nová verze

    Na GOG.com běží Spring Sale. Při té příležitosti lze získat zdarma počítačovou hru Alwa's Awakening (ProtonDB).

    Ladislav Hagara | Komentářů: 1
    28.3. 16:55 | Nová verze

    Byla vydána verze 3.28.0 2D CAD (computer-aided design) softwaru QCAD (Wikipedie). Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 0
    Používáte WSL (Windows Subsystem for Linux)?
     (73%)
     (12%)
     (4%)
     (11%)
    Celkem 371 hlasů
     Komentářů: 7, poslední 28.3. 17:34
    Rozcestník


    Dotaz: rename v debian rekurzivne

    23.8.2006 22:57 kanon | skóre: 8 | blog: dist
    rename v debian rekurzivne
    Přečteno: 227×
    ahoj

    prosim vas za boha nemuzu prijit na to jak u debianiho prikazu rename nastavit rekuzrivne i pro podadresare a soubory.

    dekuju predem

    Odpovědi

    23.8.2006 23:05 hondza
    Rozbalit Rozbalit vše Re: rename v debian rekurzivne
    Ahoj.

    Zkusil bych find:

    find dir [...podminky...] -print0 | sort -zr | xargs -0 rename '...regexp...'
    24.8.2006 09:26 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: rename v debian rekurzivne
    Při rekurzívním přejmenovávání adresářů je potřeba dát pozor na to, aby se nejprve zpracoval obsah adresáře, a pak teprve se přejmenoval jeho vlastní název. Jinak se stane, že jeho obsah takříkajíc "zmizí pod rukama".
    Zkrátka je potřeba procházet strom zdola nahoru. Nebo shora dolů. No prostě něco v tom smyslu ;-)
    Mám vyzkoušeno tohle:
    #!/usr/bin/env python
    import os, sys
    
    try:
        rename_flag = sys.argv[1] == '--rename'
    except IndexError:
        rename_flag = False
    
    def suggest_new_name(name):
        try:
            newname = name.decode('utf-8').encode('iso-8859-2')
            #newname = name.decode('iso-8859-2').encode('utf-8')
        except UnicodeDecodeError:
            return False
        except UnicodeEncodeError:
            return False
    
        if newname == name:
            return False #No renaming necesarry
        return newname
    
    def rename_path(oldpath, newpath):
        print oldpath, '->', newpath
        if rename_flag:
            os.rename(oldpath, newpath)
    
    def process_names(root, names):
        for name in names:
            newname = suggest_new_name(name)
            if not newname: continue
            fullpath_old = os.path.join(root, name)
            fullpath_new = os.path.join(root, newname)
            rename_path(fullpath_old, fullpath_new)
    
    for root, dirs, files in os.walk('.', topdown=False):
            process_names(root, files)
            process_names(root, dirs)
    
    Program projde vše rekurzivně v aktuálním adresáři a přejmenuje názvy z utf-8 do latin2, pokud takovou konverzi lze provést. Bez parametru '--rename' běží nanečisto - pouze vypíše, co by udělal.
    Tu konverzní funkci (suggest_new_name) si můžeš přepsat na cokoli tě napadne.

    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.