Gå til innhold

Endre fil-endelse lettest mulig?


Anbefalte innlegg

Skrevet

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?

Videoannonse
Annonse
Skrevet
hm, første kan du vel drop'e? siden convert ser ut til å ta output-parameter? Bare få output'en direkte til ./ som det ser ut som du vil legge den i.

 

-Dante

 

Kan du forklare litt mer utfyllende?

Skrevet

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

Skrevet

Banenavnet kommer jo litt i veien da. '{}' er jo, som du vet det absolutte navnet.

 

-print %f$'n' blir vel alternativet, men så er det sed'inga som jeg fråder rundt kjeften over mangel på dokumentasjon til.

Skrevet

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.

Skrevet

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

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...