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 13:22 | IT novinky

    Operátor O2 má opět problémy. Jako omluvu za pondělní zhoršenou dostupnost služeb dal všem zákazníkům poukaz v hodnotě 300 Kč na nákup telefonu nebo příslušenství.

    Ladislav Hagara | Komentářů: 0
    dnes 05:55 | IT novinky

    Společnost OpenAI představila GPT-5 (YouTube).

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

    Byla vydána (𝕏) červencová aktualizace aneb nová verze 1.103 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.103 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    včera 17:33 | IT novinky

    Americký prezident Donald Trump vyzval nového generálního ředitele firmy na výrobu čipů Intel, aby odstoupil. Prezident to zdůvodnil vazbami nového šéfa Lip-Bu Tana na čínské firmy.

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

    Bylo vydáno Ubuntu 24.04.3 LTS, tj. třetí opravné vydání Ubuntu 24.04 LTS s kódovým názvem Noble Numbat. Přehled novinek a oprav na Discourse.

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

    Byla vydána verze 1.89.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
    včera 12:22 | IT novinky

    Americká technologická společnost Apple uskuteční v USA další investice ve výši sta miliard dolarů (2,1 bilionu korun). Oznámil to ve středu šéf firmy Tim Cook při setkání v Bílém domě s americkým prezidentem Donaldem Trumpem. Trump zároveň oznámil záměr zavést stoprocentní clo na polovodiče z dovozu.

    Ladislav Hagara | Komentářů: 4
    včera 04:55 | Nová verze

    Zálohovací server Proxmox Backup Server byl vydán v nové stabilní verzi 4.0. Založen je na Debianu 13 Trixie.

    Ladislav Hagara | Komentářů: 0
    6.8. 16:33 | Nová verze

    Byla vydána nová verze 1.54.0 sady nástrojů pro správu síťových připojení NetworkManager. Novinkám se v příspěvku na blogu NetworkManageru věnuje Jan Václav.

    Ladislav Hagara | Komentářů: 0
    6.8. 14:11 | IT novinky

    Knižní edice správce české národní domény přináší novou knihu zkušeného programátora Pavla Tišnovského s názvem Programovací jazyk Go. Publikace nabízí srozumitelný a prakticky zaměřený pohled na programování v tomto moderním jazyce. Nejedná se však o klasickou učebnici, ale spíše o průvodce pro vývojáře, kteří s Go začínají, nebo pro ty, kdo hledají odpovědi na konkrétní otázky či inspiraci k dalšímu objevování. Tištěná i digitální verze knihy je již nyní k dispozici u většiny knihkupců.

    Ladislav Hagara | Komentářů: 2
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (44%)
     (22%)
     (4%)
     (6%)
     (3%)
     (1%)
     (1%)
     (19%)
    Celkem 292 hlasů
     Komentářů: 23, poslední 4.8. 13:01
    Rozcestník

    Dotaz: Hromadne prejmenovani vsech souboru

    Pavel V. avatar 29.9.2006 14:26 Pavel V. | skóre: 22 | Pardubice
    Hromadne prejmenovani vsech souboru
    Přečteno: 352×
    V jedne slozce mam spoustu ruznych souboru treba mp3, ogg, jpg, png a vsem temto souborum bych chtel zmenit nazev na ciselnou podobu.
    Např.: 001.mp3, 002.ogg, 003.jpg, 004.png
    Neco uz jsem dal dohromady:
    #! /bin/sh
    let N=0
    for i in *.*
    do
    mv $i $(printf %03d $N).$promenna
    let N+=1
    done
    exit
    Ale chybi mi tam radek ktery mi vypreparuje koncovku kazdeho souboru a ulozi mi jej do $promenna
    Nevite nekdo jak na to? Nebo nemate nekdo nejake reseni?

    Odpovědi

    29.9.2006 14:36 Pavel1 | skóre: 33
    Rozbalit Rozbalit vše Re: Hromadne prejmenovani vsech souboru
    Třeba takto:
    promenna="${i##*.}"   # od zacatku odstrani vse po posledni tecku
    
    Pavel V. avatar 29.9.2006 14:40 Pavel V. | skóre: 22 | Pardubice
    Rozbalit Rozbalit vše Re: Hromadne prejmenovani vsech souboru
    Dekuji. :-)
    Vysledny script:
    #! /bin/sh
    
    let N=0
    for i in *.*
    do
    k="${i##*.}"
    mv $i $(printf %03d $N).$k
    let N+=1
    done
    exit
    29.9.2006 14:54 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: Hromadne prejmenovani vsech souboru
    Málem jsem to spustil ve svém domovském adresáři :-)
    Raději nechám poslední řádek zakomentovaný.
    #!/usr/bin/env python
    import os
    for number, name in enumerate(os.listdir('.')):
        base, ext = os.path.splitext(name)
        newname = '%03d%s' %(number, ext)
        print name, newname
        #os.rename(name, newname)
    
    Jo a v tom shellovském řešení by se měly doplnit nějaké uvozovky, aby to zvládlo i soubory s mezery v názvu (písničky a filmy to tak občas mívají).
    Pavel V. avatar 29.9.2006 15:26 Pavel V. | skóre: 22 | Pardubice
    Rozbalit Rozbalit vše Re: Hromadne prejmenovani vsech souboru
    Tedy:
    #! /bin/sh
    
    let N=0
    for i in *.*
    do
    k="${i##*.}"
    mv "$i" $(printf %02d $N).$k
    let N+=1
    done
    
    Dalibor Smolík avatar 29.9.2006 16:07 Dalibor Smolík | skóre: 54 | blog: Postrehy_ze_zivota | 50°5'31.93"N,14°19'35.51"E
    Rozbalit Rozbalit vše Re: Hromadne prejmenovani vsech souboru
    Já jsem to ještě vylepšil o vytvoření podadresáře, kam se umístí přejmenované soubory, takže ty s původním názvy jsou beze změn, což se může hodit :-)
    #! /bin/sh
    #vysledek se zapise do podadresre ./output, pokud neni, tak se vytvori
    
    if [ ! -d "./output" ];
        then mkdir ./output
    fi
    
    cp *.* ./output;
    cd ./output;
    let N=0
    for i in *.*
    do
    k="${i##*.}"
    mv "$i" $(printf %02d $N).$k
    let N+=1
    done
    
    
    Rozdíly v řeči a ve zvyklostech neznamenají vůbec nic, budeme-li mít stejné cíle a otevřená srdce.
    29.9.2006 16:49 Pavel1 | skóre: 33
    Rozbalit Rozbalit vše Re: Hromadne prejmenovani vsech souboru
    Tady to furt někdo vylepšuje, tak já to taky zkusím:
    #! /bin/bash
    # soubory podle masky *.* ocisluje (od 0) a nakopiruje do adresare output
    
    mkdir -p output
    for i in *.*; do
      cp "$i" "output/$((n++)).${i##*.}"
    done
    
    29.9.2006 17:49 Pavel1 | skóre: 33
    Rozbalit Rozbalit vše Re: Hromadne prejmenovani vsech souboru
    To předešlé řešení nedoplňuje před jméno (číslo) nuly, toto už ano; otázka je, jestli se to dá brát ještě za zjednodušení (i co do přehlednosti)? Pravda je, že nevolám další shell (s printf) :
    #! /bin/bash
    # soubory podle masky *.* ocisluje (od 0) a nakopiruje do adresare output
    
    mkdir -p output
    for i in *.*; do
      s=000$[n++]
      cp "$i" "output/${s:${#s}-3:3}.${i##*.}"
    done
    
    29.9.2006 16:55 fakenickname | skóre: 42 | blog: fakeblog
    Rozbalit Rozbalit vše Re: Hromadne prejmenovani vsech souboru
    A nešlo by to nějak přímo pomocí příkazu 'rename' ? .. ale třeba jen kecám..

    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.