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 04:00 | Zajímavý software

    Open source reimplementace počítačových her Tomb Raider I a Tomb Raider II spolu s dalšími vylepšeními a opravami chyb TRX byla vydána ve verzi 1.0. Jedná se o sloučení projektů / enginů TR1X a TR2X do jednoho TRX. Videoukázka na YouTube.

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

    Společnost Seznam.cz spouští konverzační nástroj založený na umělé inteligenci Seznam Asistent. Asistent využívá vlastní jazykový model SeLLMa a dočasně i komerční modely od OpenAI provozované v evropských datacentrech prostřednictvím Microsoft Azure. Dlouhodobým cílem Seznamu je provozovat Asistenta výhradně na interních jazykových modelech a ve vlastních datových centrech.

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

    Software LibrePods osvobozuje bezdrátová sluchátka AirPods z ekosystému Applu. Exkluzivní funkce AirPods umožňuje využívat na Androidu a Linuxu. Díky zdokumentování proprietárního protokolu AAP (Apple Accessory Protocol).

    Ladislav Hagara | Komentářů: 0
    včera 05:00 | Nová verze

    Byl vydán AlmaLinux OS 10.1 s kódovým názvem Heliotrope Lion. S podporou Btrfs. Podrobnosti v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Komunita

    Placená služba prohledávání zprostředkovatelů dat a automatického odstraňování uniklých osobních údajů Mozilla Monitor Plus bude 17. prosince ukončena. Bezplatná monitorovací služba Mozilla Monitor bude i nadále poskytovat okamžitá upozornění a podrobné pokyny k omezení rizik úniku dat. Služba Mozilla Monitor Plus byla představena v únoru loňského roku.

    Ladislav Hagara | Komentářů: 0
    24.11. 22:44 | Nová verze

    Waydroid (Wikipedie, GitHub) byl vydán v nové verzi 1.6.0. Waydroid umožňuje spouštět aplikace pro Android na běžných linuxových distribucích. Běhové prostředí vychází z LineageOS.

    Ladislav Hagara | Komentářů: 3
    24.11. 15:44 | Nová verze

    Příspěvek na blogu Raspberry Pi představuje novou kompletně přepracovanou verzi 2.0 aplikace Raspberry Pi Imager (YouTube) pro stažení, nakonfigurování a zapsání obrazu operačního systému pro Raspberry Pi na SD kartu. Z novinek lze vypíchnout volitelnou konfiguraci Raspberry Pi Connect.

    Ladislav Hagara | Komentářů: 3
    24.11. 11:22 | Nová verze

    Memtest86+ (Wikipedie), svobodný nástroj pro kontrolu operační paměti, byl vydán ve verzi 8.00. Přináší podporu nejnovějších procesorů Intel a AMD nebo také tmavý režim.

    Ladislav Hagara | Komentářů: 0
    24.11. 10:55 | Nová verze

    Programovací jazyk Racket (Wikipedie), tj. jazyk z rodiny jazyků Lisp a potomek jazyka Scheme, byl vydán v nové major verzi 9.0. Hlavní novinku jsou paralelní vlákna (Parallel Threads).

    Ladislav Hagara | Komentářů: 0
    24.11. 10:11 | Komunita

    Před šesti týdny bylo oznámeno, že Qualcomm kupuje Arduino. Minulý týden byly na stránkách Arduina aktualizovány podmínky používání a zásady ochrany osobních údajů. Objevily se obavy, že by otevřená povaha Arduina mohla být ohrožena. Arduino ubezpečuje, že se nic nemění a například omezení reverzního inženýrství v podmínkách používání se týká pouze SaaS cloudové aplikace.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (35%)
     (46%)
     (19%)
     (18%)
     (22%)
     (15%)
     (23%)
     (16%)
     (17%)
    Celkem 400 hlasů
     Komentářů: 17, poslední 19.11. 21:57
    Rozcestník

    Dotaz: rekurzivní přejmenování souborů

    6.2.2008 19:49 Generator | skóre: 4
    rekurzivní přejmenování souborů
    Přečteno: 689×
    Převedl jsem image CD z formátu .img do .iso s kterým můžu dále pracovat. Jenže po téhle konverzi je na konci všech souborů ";1" a potřebuju to odstranit. Ruční přejmenování vzhledem k počtu souborů odpadá, ale nevím co napsat do terminálu.

    Odpovědi

    6.2.2008 20:00 diverman | skóre: 32 | blog: život s tučňáčkem
    Rozbalit Rozbalit vše Re: rekurzivní přejmenování souborů
    neco ve stylu find -name xxx -exec mv {} yyy\; jste zkousel?
    deb http://ftp.cz.debian.org/debian jessie main contrib non-free
    6.2.2008 20:37 JirkaV
    Rozbalit Rozbalit vše Re: rekurzivní přejmenování souborů
    Z hlavy (nezkouseno) by to bylo treba takhle:
    ls -1 | while read FILE ; do NEWFILE=$(echo $FILE | sed -e 's/\(.*\);1/\1/g') ; mv $FILE $NEWFILE ; done
    
    Neresi to stavy kdy by byly dva soubory velmi podobneho jmena v jednom adresari atd.

    Mimochodem, co to ma spolecneho s rekurzi? ;-)

    Jirka Vejrazka
    6.2.2008 21:13 bk
    Rozbalit Rozbalit vše Re: rekurzivní přejmenování souborů
    Mimochodem, co to ma spolecneho s rekurzi?
    Selsky rozum mi rika, ze to chce udelat i v podadresarich.
    6.2.2008 20:47 Jan Šimák | skóre: 37 | Hradec Králové
    Rozbalit Rozbalit vše Re: rekurzivní přejmenování souborů
    #!/usr/bin/env bash
    
    var=`find /prohledavany/adresar -name '*\;1' -print`
    
    for i in "$var"; do
     	mv "$i" ${i%;1}
    done
    6.2.2008 21:19 marbu | skóre: 31 | blog: hromada | Brno
    Rozbalit Rozbalit vše Re: rekurzivní přejmenování souborů
    Tohle ale nebude imho fungovat, pokud budou tím ;1 zakončené i adresáře. Zkusil bych něco jako:
    files=`find . -name '*\;1' -print | sed 's/\n/\ /g'`
    
    for i in $files; do
        mv "$i" "`echo "$i" |sed "s/;1//g"`";
    done
    
    There is no point in being so cool in a cold world.
    6.2.2008 21:28 marbu | skóre: 31 | blog: hromada | Brno
    Rozbalit Rozbalit vše Re: rekurzivní přejmenování souborů
    EDIT: ten můj kód je blbost, ignorujte ho :(
    There is no point in being so cool in a cold world.
    6.2.2008 21:31 bk
    Rozbalit Rozbalit vše Re: rekurzivní přejmenování souborů
    To by mohlo fungovat, ale prudit budu tak jako tak :-)

    Jde o to, ze takhle se jmena vsech souboru nacpou do promenne var a ta se pak zpracovava. Pokud se to pusti na adresare s desetitisici soubory, tak to muze zhavarovat. Lepsi je to delat primo pres volby findu -exec nebo -execdir.

    V tomto pripade to bude celkem jedno, ale podobne nevhodne koncipovanych skriptu je zde prezentovana cela rada. Chtelo by to ukazkovy priklad, at lidi vidi, jak se to ma delat.

    (A proc to nenapisu sam? Protoze mam hlad a jdu domu ...)
    6.2.2008 21:48 drob
    Rozbalit Rozbalit vše Re: rekurzivní přejmenování souborů
    ked ukojis svoje primitivne pudy, tak by si predsa len mohol vykonat tu "vznesenejsiu" cinnost, fakt by ma to zaujimalo ;-)
    6.2.2008 23:32 bk
    Rozbalit Rozbalit vše Re: rekurzivní přejmenování souborů
    Tak po trech zhavych psech (v originale hot dogs) ze me vylezlo nasledujici::
    find /adresar -type f -exec bash -c 'mv "$0" "${0%;1}"' '{}' \;
    
    Vysvetleni: Find pres volbu -exec spusti bash a preda mu 3 parametry: (1) -c, (2) mv "$0" "${0%;1}" a (3) jmeno souboru. Bash podle volby -c pozna, ze ma argument (2) interpretovat jako seznam prikazu. Argument (3) vlozi Bash do promenne $0. Seznam prikazu (argument (2)) pak uz jen pouzije promennou $0.

    Pokud tam vidite nejakou chybu, tak to opravte. Normalni lidi pouzivaji neco jako
    find /adresar -type f -exec ./prejmenuj '{}' \;
    
    kde prejmenuj je napr.
    #!/bin/bash
    mv "$1" "${1%;1}"
    
    ale me to po tech zhavych psech nedalo, a ten skript jsem vecpal do jednoho radku.
    6.2.2008 23:50 bk
    Rozbalit Rozbalit vše Re: rekurzivní přejmenování souborů
    Jeste doplnim pro zacatecniky: pokud ten script budete modifikovat, tak si napred nechte vypsat, co ten prikaz bude delat. Napr. takto:
    find /adresar -type f -exec bash -c 'echo mv _"$0"_ _"${0%;1}"_' '{}' \;
    
    (Podtrzitka jsou tam proto, aby bylo videt, kde zacinaji a konci jednotlive argumenty.) Tyhle "zhustene" prikazy sice vypadaji cool, ale pokud se clovek splete, tak muze natropit hodne skody.
    6.2.2008 22:23 Jan Šimák | skóre: 37 | Hradec Králové
    Rozbalit Rozbalit vše Re: rekurzivní přejmenování souborů
    Máte pravdu, že pokud by jména adresářů také končila na ";1", tak by uvedený script zhavarovat s hláškou o neexistenci adresáře. V tom případě je jediným řešením -exec pro okamžité vykonávání.
    Jelikož ale tazatel uvedl problém pouze se jmény souborů, tak jsem adresáře vůbec neuvažoval.
    6.2.2008 21:59 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: rekurzivní přejmenování souborů

    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.