/ Forside / Teknologi / Operativsystemer / Linux / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Linux
#NavnPoint
o.v.n. 11177
peque 7911
dk 4814
e.c 2359
Uranus 1334
emesen 1334
stone47 1307
linuxrules 1214
Octon 1100
10  BjarneD 875
uppercase -> lowercase
Fra : Martin Kaltoft


Dato : 17-06-02 16:16

Jeg har brug for en kommando til at omdøbe alle filer i et dir. fra
uppercase til lowercase noget a'la: 'mv IMG_00*.JPG img_00*.jpg' men det
kan man jo ikke...

--
Martin Kaltoft

 
 
Peter Makholm (17-06-2002)
Kommentar
Fra : Peter Makholm


Dato : 17-06-02 16:19

Martin Kaltoft <martin@[nospam]nitro.dk> writes:

> Jeg har brug for en kommando til at omdøbe alle filer i et dir. fra
> uppercase til lowercase noget a'la: 'mv IMG_00*.JPG img_00*.jpg' men det
> kan man jo ikke...

I perls sourcedistribution følger der et scipt med der kan det du
ønsker. På Debian installeres det under navnet rename. Dette script
kan løse opgaven med:

$ rename 'y/A-Z/a-z/' *.JPG

Ellers kan programmet mmv (følger også med Debian) gøre det med:

$ mmv '*' #l1


Ellers kunne du måskle prøve med:

$ perl -e 'while($new=$old=shift){$new=~y/A-Z/a-z/;rename$old,$new}' *.JPG

Men så er der absolut ingen fejltjekning på. (Jeg har heller ikke
afprøvet det).

--
Peter Makholm | 'Cause suicide is painless
peter@makholm.net | It brings on many changes
http://hacking.dk | And I can take or leave it if I please
| -- Suicide is painless

Martin Kaltoft (17-06-2002)
Kommentar
Fra : Martin Kaltoft


Dato : 17-06-02 17:36

> I perls sourcedistribution følger der et scipt med der kan det du
> ønsker. På Debian installeres det under navnet rename. Dette script
> kan løse opgaven med:

Jeg kan ikke rigtig finde den:
"E: Couldn't find package rename"

> Ellers kan programmet mmv (følger også med Debian) gøre det med:
>
> $ mmv '*' #l1

Hmm, den virker ikke rigtig, efter hvad jeg kan læse i man-siden er det
ellers korrekt syntaks...

> $ perl -e 'while($new=$old=shift){$new=~y/A-Z/a-z/;rename$old,$new}' *.JPG
> Men så er der absolut ingen fejltjekning på. (Jeg har heller ikke
> afprøvet det).

Den er jeg ikke så meget for, jeg vil meget nødigt risikere at miste nogle
af filerne.

--
Martin Kaltoft

Kim Hansen (17-06-2002)
Kommentar
Fra : Kim Hansen


Dato : 17-06-02 20:32

Martin Kaltoft <martin@[nospam]nitro.dk> writes:

> > Ellers kan programmet mmv (følger også med Debian) gøre det med:
> >
> > $ mmv '*' #l1
>
> Hmm, den virker ikke rigtig, efter hvad jeg kan læse i man-siden er det
> ellers korrekt syntaks...

Det er fordi # også skal escapes:

$ mmv '*' '#l1'

--
Kim Hansen | |\ _,,,---,,_ | Det er ikke
Dalslandsgade 8, A708 | /,`.-'`' -. ;-;;,_ | Jeopardy.
2300 København S | |,4- ) )-,_. ,\ ( `'-' | Svar _efter_
Phone: 32 88 60 86 | '---''(_/--' `-'\_) | spørgsmålet.

Peter Makholm (17-06-2002)
Kommentar
Fra : Peter Makholm


Dato : 17-06-02 17:36

Martin Kaltoft <martin@[nospam]nitro.dk> writes:

>> I perls sourcedistribution følger der et scipt med der kan det du
>> ønsker. På Debian installeres det under navnet rename. Dette script
>> kan løse opgaven med:
>
> Jeg kan ikke rigtig finde den:
> "E: Couldn't find package rename"

Scriptet hedder rename. Der er i perl-pakken.

--
Peter Makholm | Ladies and gentlemen, take my advice, pull down your
peter@makholm.net | pants and slide on the ice
http://hacking.dk | -- Sidney Freedman

Martin Kaltoft (17-06-2002)
Kommentar
Fra : Martin Kaltoft


Dato : 17-06-02 17:45

> Scriptet hedder rename. Der er i perl-pakken.

Sørme, og det virker perfekt.

Takker

--
Martin Kaltoft

Peter Makholm (17-06-2002)
Kommentar
Fra : Peter Makholm


Dato : 17-06-02 21:22

Kim Hansen <k-tahf.qvxh@oek.dk> writes:

> Det er fordi # også skal escapes:
>
> $ mmv '*' '#l1'

Klart. Hash begynder en kommentar.

--
Peter Makholm | Wisdom has two parts:
peter@makholm.net | 1) having a lot to say, and
http://hacking.dk | 2) not saying it

Christoffer Olsen (17-06-2002)
Kommentar
Fra : Christoffer Olsen


Dato : 17-06-02 17:14

Martin Kaltoft <martin@[nospam]nitro.dk> writes:

> Jeg har brug for en kommando til at omdøbe alle filer i et dir. fra
> uppercase til lowercase noget a'la: 'mv IMG_00*.JPG img_00*.jpg' men det
> kan man jo ikke...

Fandt den her i FDU mini HOWTO'en:

#!/bin/sh
#
## -------- convert upper to lower case ---------

ls * | while read f
do
if [ -f $f ]; then
if [ "$f" != "`echo \"$f\" | tr A-Z a-z`" ]; then
#Note that 'This' will overwrite 'this'!
mv -iv "$f" "`echo \"$f\" | tr A-Z a-z`"
fi
fi
done
## eof

--
Mvh Christoffer Olsen
   ***   ***   ***   ***   ***   ***
"You can check out anytime you like, but you can never leave"
   Eagles - Hotel California

Søg
Reklame
Statistik
Spørgsmål : 177511
Tips : 31968
Nyheder : 719565
Indlæg : 6408596
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste