Gå til innhold

Endre fil-endelse lettest mulig?


Anbefalte innlegg

Her er da slik jeg gjør det nu, i en 3-stegs kombinasjon. Amatørmessig og klønete, så hvordan kan jeg gjøre det med litt mer stil?

 

find somewhere -name *.bmp -exec cp '{}' . ;

find . -name *.bmp -exec convert '{}' '{}'.png ;

rename .bmp.png .png *.bmp.png

 

Altså finne filer, convertere og gi nytt navn. Hvor da kluet er at det å endre fil-endelsen jo kunne vært gjort i den andre commandoen med noe sed, kanskje?

Lenke til kommentar
Videoannonse
Annonse

find somewhere -name *.bmp -exec cp '{}' .; 

find . -name *.bmp -exec convert '{}' '{}'.png; 

rename .bmp.png .png *.bmp.png 

 

Kan ikke man dropp'e første leddet og gjøre noe lignende? :

 

find somewhere -name *.bmp -exec convert '{}' `basename {}.png` ;

 

Eller noe lignende?

Altså:

I stede for å finne filene, så kopiere den itl ./, SÅ konvertere, og så rename.

Så må det da være mulig å finne, og konvertere i samme runde, siden convert ser ut til å ta et parameter for hva fila skal hete?

 

-Dante

Lenke til kommentar

Finurlig.

 

Men så har vi da at jeg er en påståelig, vanskelig kar som VIL ha rett, og tillater meg derfor å minne på at ved bruken av 'find' (til forskjell fra bruken av 'for...do') ligger det implisitt (vel, MER implisitt hveffall) at det ikke automatisk kan antas å dreie seg om kun ETT nivå i katalogschtruktyren som selve finninga begrenses til.

Lenke til kommentar

Så enig, så enig!

Men jeg ser du orginalt vil finne alle .bmp filer i underkatalog av "somedir", kopierer de til ./ (aktiv katalog), for så og konverete dem, så rename?

 

HVORFOR ikke da søke fram de .bmp filer i "somedir", og så sende de til convert med ./filnavn som andre parameter? Da har du allerede spart et ledd?

 

Dessuten er jeg også kverulant (noe du beskrev med finere ord ;) ), og jeg vil også nevne at rekursjon er helt vanlig. For-løkker brukes fint til slikt =)

 

Uannsett, vi blir offtopic nå, så jeg gir meg.

 

-Dante

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...