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 12:44 | Bezpečnostní upozornění

    Marek Tóth v příspěvku DOM-based Extension Clickjacking: Data ve správcích hesel v ohrožení na svém blogu popsal novou clickjacking techniku s několika variantami útoků a otestoval ji proti 11 správcům hesel. Výsledkem bylo nalezení několika 0-day zranitelností, které mohly ovlivnit uložená data desítek milionů uživatelů. Jedno kliknutí kdekoliv na webové stránce kontrolované útočníkem umožňovalo ukrást uživatelská data ze

    … více »
    Ladislav Hagara | Komentářů: 0
    včera 21:11 | IT novinky

    Na dnešní akci Made by Google 2025 (YouTube) byly představeny telefony Pixel 10 s novým čipem Google Tensor G5 a novými AI funkcemi, hodinky Pixel Watch 4 a sluchátka Pixel Buds 2a.

    Ladislav Hagara | Komentářů: 12
    včera 14:11 | Nová verze

    The Document Foundation oznámila vydání nové major verze 25.8 svobodného kancelářského balíku LibreOffice. Podrobný přehled nových vlastností i s náhledy v poznámkách k vydání (cs) a také na Youtube a PeerTube.

    Ladislav Hagara | Komentářů: 13
    včera 04:00 | Nová verze

    Zeek (Wikipedie), původně Bro, byl vydán v nové major verzi 8.0.0. Jedná se o open source platformu pro analýzu síťového provozu. Vyzkoušet lze online.

    Ladislav Hagara | Komentářů: 0
    19.8. 23:55 | Zajímavý software

    Emacs na stříhání videa? Klidně.

    Ladislav Hagara | Komentářů: 7
    19.8. 15:55 | Nová verze

    Byl vydán Mozilla Firefox 142.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 142 je již k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    19.8. 13:22 | Zajímavý článek

    Python Developers Survey 2024, výsledky průzkumu mezi vývojáři v Pythonu organizovaném Python Software Foundation ve spolupráci se společností JetBrains v říjnu a listopadu loňského roku. Zúčastnilo se 30 tisíc vývojářů z 200 zemí. Linux používá 59 % z nich.

    Ladislav Hagara | Komentářů: 0
    19.8. 04:00 | Zajímavý článek

    Farid Abdelnour se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.08.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.

    Ladislav Hagara | Komentářů: 3
    19.8. 01:55 | Nová verze

    Byla vydána nová verze 2.51.0 distribuovaného systému správy verzí Git. Přispělo 91 vývojářů, z toho 21 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 2
    19.8. 01:33 | Zajímavý článek

    Po roce bylo vydáno nové číslo magazínu Phrack: Phrack 72.

    Ladislav Hagara | Komentářů: 4
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (79%)
     (12%)
     (6%)
     (0%)
     (3%)
     (0%)
    Celkem 33 hlasů
     Komentářů: 5, poslední dnes 07:29
    Rozcestník

    Dotaz: bash script - prejmenovani souboru

    8.1.2016 21:45 petrfm | skóre: 23
    bash script - prejmenovani souboru
    Přečteno: 621×
    Ahoj, prosim o pomoc, potreboval bych udelat script, ktery prida prefix ke vsem obrazkum v adresari. Nasel jsem tohle :
    for f in $(find . -name '*.jpg'); do mv "$f" "$(dirname "$f")/prefix_$(basename "$f")"; done
    Potreboval bych to upravit tak, aby to fungovalo na vice pripon, t.j. jpg, jpeg, gif, atd a aby prefix bylo jmeno nadrazeneho adresare + znak pomlcky. Mam adresare a123 a124 a125 a v nich jsou ty obrazky. Potrebuju z kazdeho toho adresare spustit ten skript, on by si zjistil ze je v adresari a123 a pridal tedy vsem obrazkum prefix a123-obrazek1.jpg, atd.

    Druha moznost je, ze by to proslo ty obrazky abecedne, jak jdou za sebou a prejmovalo je to na a123-1, a123-2,atd. To by bylo jeste lepsi.

    Dekuji za pomoc, na bash scripty jsem totalni lama :-( P.
    fuck the cola, fuck the pizza, all you need is slivovitza

    Odpovědi

    8.1.2016 22:31 vrana
    Rozbalit Rozbalit vše Re: bash script - prejmenovani souboru
    v bashi:
    for d in *; do
      cd $d || continue
      i=1
      for f in *; do
        mv $f $d-$((i++))
      done
      cd -
    done
    
    8.1.2016 23:04 NN
    Rozbalit Rozbalit vše Re: bash script - prejmenovani souboru
    #!/bin/bash
    dir=`basename $PWD`
    rename "s/(.*)/$dir-\1/" *.{jpg,jpeg,gif} 2>/dev/null
    
    9.1.2016 08:00 petrfm | skóre: 23
    Rozbalit Rozbalit vše Re: bash script - prejmenovani souboru
    Diky moc, panove, integruju si to do cinnosti v KDE a usnadni mi to moc prace.
    fuck the cola, fuck the pizza, all you need is slivovitza
    9.1.2016 16:43 petrfm | skóre: 23
    Rozbalit Rozbalit vše Re: bash script - prejmenovani souboru
    Tak prvni priklad mi vyhazuje chybu...
    petr@T400:~/test/e123$ ./prejmenuj.sh 
    ./prejmenuj.sh: řádek 3: cd: e123-1.jpeg: není adresářem
    ./prejmenuj.sh: řádek 3: cd: e123-2.jpeg: není adresářem
    ./prejmenuj.sh: řádek 3: cd: e123-3.jpeg: není adresářem
    ./prejmenuj.sh: řádek 3: cd: prejmenuj.sh: není adresářem
    petr@T400:~/test/e123$ 
    
    
    No a ten druhy zase doplni prefix, to funguje super, ale pokud mam obrazky s nazvem A,B,C, atd, slo by udela ,aby je prejmenoval na e123-1, atd? Aby uplne smazal jejich nazev a prepsal je nazvem adresare a -1,-2,-3, atd?
    cili mam a.jpg,b.jpg,c.jpg
    
    a chci
    
    e123-1.jpg
    e123-2.jpg
    atd..
    fuck the cola, fuck the pizza, all you need is slivovitza
    9.1.2016 20:42 petrfm | skóre: 23
    Rozbalit Rozbalit vše Re: bash script - prejmenovani souboru
    Tak, vyreseno, sice trochu krkolomne, ale funguje :-)

    #!/bin/bash
    prefix=`basename $PWD`"-"
    
    a=1
    for i in *.jpg; do
      new=$prefix$(printf "%01d.jpg" "$a") #04 pad to length of 4
      mv -- "$i" "$new"
      let a=a+1
    done
    
    
    
    a=1
    for i in *.jpeg; do
      new=$prefix$(printf "%01d.jpeg" "$a") #04 pad to length of 4
      mv -- "$i" "$new"
      let a=a+1
    done
    
    
    a=1
    for i in *.png; do
      new=$prefix$(printf "%01d.png" "$a") #04 pad to length of 4
      mv -- "$i" "$new"
      let a=a+1
    done
    
    
    
    
    fuck the cola, fuck the pizza, all you need is slivovitza
    9.1.2016 21:04 petrfm | skóre: 23
    Rozbalit Rozbalit vše Re: bash script - prejmenovani souboru
    Kdyby se to někdy někomu hodilo, tak jsem to učesal a doplnil o GTK dialog pro možnost změny tvaru prefixu :-) Do okna se vloží implicitně adresář, ale dá se to snadno přepsat, nebo odklepnout entrem :-)
    #!/bin/bash
    prefix=`basename $PWD`"-"
    
    prefix=$(zenity --entry --entry-text=$prefix)
    retval=$?
    
    case $retval in
    0)
    echo "Input string is '$prefix'";;
    1)
    exit;;
    esac
    
    # ============================== jpg
    a=1
    for i in *.jpg; do
      new=$prefix$(printf "%01d.jpg" "$a") #04 pad to length of 4
      mv -- "$i" "$new"
      let a=a+1
    done
    # ============================== jpeg
    a=1
    for i in *.jpeg; do
      new=$prefix$(printf "%01d.jpeg" "$a") #04 pad to length of 4
      mv -- "$i" "$new"
      let a=a+1
    done
    # ============================== png
    a=1
    for i in *.png; do
      new=$prefix$(printf "%01d.png" "$a") #04 pad to length of 4
      mv -- "$i" "$new"
      let a=a+1
    done
    
    
    
    fuck the cola, fuck the pizza, all you need is slivovitza
    9.1.2016 21:44 petrfm | skóre: 23
    Rozbalit Rozbalit vše Re: bash script - prejmenovani souboru
    ajajaj.... ted jsem si tim hezky rozesral adresarovou strukturu... pustil jsem to nad sambou, kde mam adresare i ve tvaru !!adresar nebo /adresar-tady/!!neco/obrazky/ a krasne mi to prejmenovalo adresare uplne jinde :-(

    Asi tomu chybi nejake osetreni tech cest, aby to nebralo vykricnik jako zastupny znak.... No do (_!_), usetril jsem si skriptem praci :-) Ted budu pul hodiny opravovat, brrrrrrrr
    fuck the cola, fuck the pizza, all you need is slivovitza

    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.