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

    Netwide Assembler (NASM) byl vydán v nové major verzi 3.00. Přehled novinek v poznámkách k vydání v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    dnes 20:11 | Komunita

    Linuxová distribuce Frugalware (Wikipedie) ke konci roku 2025 oficiálně končí.

    Ladislav Hagara | Komentářů: 0
    dnes 17:22 | Nová verze

    Byla vydána nová verze 3.0.6 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP bude brzy k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    dnes 16:11 | IT novinky

    Americký výrobce čipů AMD uzavřel s americkou společností OpenAI smlouvu na několikaleté dodávky vyspělých mikročipů pro umělou inteligenci (AI). Součástí dohody je i předkupní právo OpenAI na přibližně desetiprocentní podíl v AMD.

    Ladislav Hagara | Komentářů: 1
    dnes 12:22 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 20:00 | Komunita

    Byly zpracovány a na YouTube zveřejněny videozáznamy z konference LinuxDays 2025.

    Ladislav Hagara | Komentářů: 0
    4.10. 15:22 | IT novinky

    Na konferenci LinuxDays 2025 byl oficiálně představen nový router Turris Omnia NG.

    Ladislav Hagara | Komentářů: 34
    4.10. 05:22 | Komunita

    Přímý přenos (YouTube) z konference LinuxDays 2025, jež probíhá tento víkend v Praze v prostorách FIT ČVUT. Na programu je spousta zajímavých přednášek.

    Ladislav Hagara | Komentářů: 16
    3.10. 22:44 | IT novinky

    V únoru loňského roku Úřad pro ochranu osobních údajů pravomocně uložil společnosti Avast Software pokutu 351 mil. Kč za porušení GDPR. Městský soud v Praze tuto pokutu na úterním jednání zrušil. Potvrdil ale, že společnost Avast porušila zákon, když skrze svůj zdarma dostupný antivirový program sledovala, které weby jeho uživatelé navštěvují, a tyto informace předávala dceřiné společnosti Jumpshot. Úřad pro ochranu osobních údajů

    … více »
    Ladislav Hagara | Komentářů: 9
    3.10. 19:00 | Nová verze

    Google Chrome 141 byl prohlášen za stabilní. Nejnovější stabilní verze 141.0.7390.54 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 21 bezpečnostních chyb. Za nejvážnější z nich (Heap buffer overflow in WebGPU) bylo vyplaceno 25 000 dolarů. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (38%)
     (45%)
     (15%)
     (17%)
     (22%)
     (15%)
     (18%)
     (16%)
     (15%)
    Celkem 181 hlasů
     Komentářů: 12, poslední 4.10. 20:35
    Rozcestník

    Dotaz: Hromadná změna názvu souboru dle regexp

    6.3.2013 17:42 regulator
    Hromadná změna názvu souboru dle regexp
    Přečteno: 344×
    Ahoj,

    můžete mi poradit jak hromadně přejmenovat všechny soubory ve složce s danou maskou např.

    /home/admin/neco-neco.www.neco.txt

    na

    /home/admin/neco-neco.neco.txt

    Tedy zbavit se "www.".

    Díky

    Řešení dotazu:


    Odpovědi

    6.3.2013 19:27 hajoucha | skóre: 22
    Rozbalit Rozbalit vše Re: Hromadná změna názvu souboru dle regexp
    nezkoušel jsem, ale myslím, že tohle umí příkaz rename
    6.3.2013 20:04 potato
    Rozbalit Rozbalit vše Re: Hromadná změna názvu souboru dle regexp
    Existují dva různé příkazy rename, jeden pracuje s regulárními výrazy, druhý ne. Na toto lze použít kterýkoli, ale volání bude trochu jiné...
    6.3.2013 21:10 Patrik Uhrak | skóre: 31 | blog: pato
    Rozbalit Rozbalit vše Re: Hromadná změna názvu souboru dle regexp

    Da sa to aj cisto v bash-i a inych shelloch tiez isto. V bash-i by to mohlo byt aj nasledovne a mozno aj jednoduchsie (aj ked rychlost nebude mozno ozdobou tohto riesenia pri velkych objemoch :) ):

    cesta='path/admin'
    string='.www'
    maska='^.*-.*\.www\..*\.txt$'
    
    for file in "$cesta"/*
    do 
        if [[ -f "$file" && -w "$file" ]]
        then 
            if [[ "$file" =~ $maska ]]
            then 
                mv "${BASH_REMATCH[0]}" "${BASH_REMATCH[0]/$string}"
            fi
        fi
    done
    
    6.3.2013 21:24 Patrik Uhrak | skóre: 31 | blog: pato
    Rozbalit Rozbalit vše Re: Hromadná změna názvu souboru dle regexp

    No zrovna cisto v bash-i to nie je skrz pouzitia mv. Tak kludne ostan pri rename, ak ti to vyhovuje. :)

    6.3.2013 23:36 potato
    Rozbalit Rozbalit vše Re: Hromadná změna názvu souboru dle regexp
    +1

    Namísto spuštění jednoho rename se vytváří proces pro přejmenování každého jednotlivého souboru.
    6.3.2013 23:54 Patrik Uhrak | skóre: 31 | blog: pato
    Rozbalit Rozbalit vše Re: Hromadná změna názvu souboru dle regexp
    S tym suhlasim, ale ako si mozes vsimnut, na rename moc nedal taktiez ku koncu, kedze strejda gugl vyplul nieco podobneho. A ... tak nemam co robit, tak to potom aj vyzera. :) Resp. by bolo, ale to by som sa musel citit o nieco lepsie.
    6.3.2013 21:59 Vodny | skóre: 8
    Rozbalit Rozbalit vše Re: Hromadná změna názvu souboru dle regexp
    Toto si složil jen tak z hlavy?
    6.3.2013 23:33 Patrik Uhrak | skóre: 31 | blog: pato
    Rozbalit Rozbalit vše Re: Hromadná změna názvu souboru dle regexp

    Tak odniekal to musi ist. :D Na tom nie je nic zlozite. Sa vezme kazdy subor (subor, adresar, link, atd ) na zadanom umiestneni (premenna cesta), otestuje sa, ci je to skutocne subor a ci mame opravnenie na zapis. Nasledne sa overi, ci nazov suhlasi s nasim vzorcom (premenna maska ) a ak ano, tak sa odstrani nezelany retazec ( premenna string ).

    6.3.2013 23:27 regulator
    Rozbalit Rozbalit vše Re: Hromadná změna názvu souboru dle regexp
    Díky všem, nakonec vyřešeno in-one-line :), díky strejdo google
     for filename in aws*; do newname=`echo $filename | sed 's/\.www//g'`; mv $filename $newname; done
    
    6.3.2013 23:50 Patrik Uhrak | skóre: 31 | blog: pato
    Rozbalit Rozbalit vše Re: Hromadná změna názvu souboru dle regexp

    Volat sed v tomto pripade je zbytocne, bo to je riadny kanon na tak jednoduchu vec.Ono to ide aj takto, teda pokial to moze byt bash alebo iny shell, ktory podporuje manipulaciu s retazcami na premennych. (Nechce sa mi teraz hladat, ci a ci nie je to aj v bourne shell a inych ) A nezabudni, ze dvojite uvodzovky neuskodia okolo dpremennych s nazvami suborov, inak to moze dopadnut inak nez by si si zelal.

    for filename in aws*; do mv "$filename" "${filename/\.www}"; done

    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.