Sziasztok,
adott egy könyvtárszerkezet, amiben fotókat tartok, de ezekből sok (de nem mindegyik) két példányban is létezik, .cr2 illetve .jpg kiterjesztéssel.
Mi a legegyszerűbb módja hogy minden .cr2 kiterjesztést letöröljek AMENNYIBEN létezik .jpg belőle?
Ubuntu 14.04, gondolom bash-ben megoldható :)
Köszi előre is!
Hozzászólások
Én a .cr2-tőt tartanám meg. Reggeli után írok megoldást is, de most nagyon éhes vagyok.
NAS-on van backup mindegyikből (tudom hogy a RAW jobb, de a notin az SSD-n csak a .jpg-ket tartanám :) )
Ezért ez még bőven csiszolható, abból a feltételezésből indultam ki, hogy csak .jpg van és nincs .Jpg vagy hasonló.
Hm, nálam kb. 1.5G hely szabadult fel... már megérte foglalkozni vele (igaz én fordítva töröltem :D)
find . -name '*.cr2' -exec sh -c 'if [ -f "${1%cr2}jpg" ]; then rm "$1"; fi' delete_jpgs {} \;
Nem inkább delete_raw? Kevésbé lenne megtévesztő :D
De :)
Meg gondolkoztam, hogy lehetne rm -f, ami nem panaszkodik ha nincs ott a file, így kihagyható(*) az ellenőrzés, és akkor:
find . -iname '*.jpg' -exec bash -c 'rm -f "${1%:0:-3}cr2"' a {} \;
De ezt még macerásabb olvasni, pláne javítani. Különösen ha kiötlök még valami case-fix voodoo-t, pl.:
find . -iname '*.jpg' -exec bash -c 'rm -f "${1%:0:-3}[cC][rR]2"' a {} \;
*) Egyébként is kihagyható persze, kit érdekel a hiszti :D
Bash-ben a -3 elé nem kell egy szóköz?
Nem:
Akkor bocs. Valamit összekeverhettem.
Ez frankón működik (most már tudom hogy van a find-nak actions része is :) ), viszont case sensitive, és esetemben CR2 és JPG volt a kiterjesztés :)
Köszi!
Hárommal lejjebb ott van, hogy -iname a -name helyett.
Igen: http://hup.hu/node/136897?comments_per_page=9999#comment-1807078
find . -iname '*.jpg' -exec bash -c 'rm -f "${1%:0:-3}[cC][rR]2"' a {} \;
Köszi, sorban mentem és addig akkor még nem jutottam :)
keresd a *.cr2 file-okat majd vagd le a vegerol a cr2 kiterjesztest es tedd hozza a jpg majd az igy keletkezett filokat torolheted.
Erdmeny: ha volt ilyan torolte, ha nincs ilyen akkor jelezi, hogy nem tudja torolni.
http://sethgodin.typepad.com/.a/6a00d83451b31569e2019aff29b7cd970c-450wi
:D
Yes. Bar nem irta, hogy neki a kod kell. ;)
köszi mindenkinek az agyvihart :) innen már megoldom szerintem :)