risc2000
Goto Top

find und das -exec Kommando

Hallo, ich möchte in einem Verzeichnis rekursiv mehrere Bilddateien konvertieren, dies soll mit der -exec Option realisiert werden.

Zunächst einmal ein Beispiel, um alle Bilder in dem Verzeichnis zu zählen:

# find -type f -name "*.jpg" -or -name "*.JPG" | wc -l 
11726

Es sind also 11726 Bilder im Verzeichnis

Das Problem ist jetzt, das die -exec Option im folgenden Beispiel nur auf die "*.JPG" ausgeführt wird und nicht auf die "*.jpg"

Beispiel:

# find -type f -name "*.jpg" -or -name "*.JPG" -exec file {} \; | wc -l 
7754

Wie zu sehen ist, werden jetzt nur noch 7754 Dateien gefunden, was genau auf die Anzahl der großgeschriebenen *.JPG Dateien zutrifft.

Wie kann die -exec Option auf beide Deinamen (also *.jpg und *.JPG) angewendet werden?

Danke.

Content-ID: 90038

Url: https://administrator.de/contentid/90038

Ausgedruckt am: 26.11.2024 um 10:11 Uhr

paulepank
paulepank 17.06.2008 um 14:05:37 Uhr
Goto Top
Hallo,

so sollte es gehen

find -type f -name "*.[jJ][pP][gG]" -exec file {} \;|wc -l  

damit werden auch jPg oder JPg gefunden, aber wenn die nicht vorhanden sind, wars das

cu paulepank
risc2000
risc2000 17.06.2008 um 14:19:55 Uhr
Goto Top
So geht's.

Danke @paulepank
paulepank
paulepank 17.06.2008 um 14:49:28 Uhr
Goto Top
muß mich selbst verbessern face-smile

find -type f -name "*.{jpg,JPG}" -exec file {} \;|wc -l  
ist besser.

cu paulepank
risc2000
risc2000 17.06.2008 um 14:57:49 Uhr
Goto Top
Ja, das sieht noch besser aus.

thx
6890
6890 18.06.2008 um 18:23:12 Uhr
Goto Top
Um das ganze noch einfacher zu machen...
find -type f -iname "*.jpg" -exec file {} \; | wc -l
risc2000
risc2000 18.06.2008 um 18:48:39 Uhr
Goto Top
Perfekt.

In meinen manpages ist zu iname nichts zu finden.

Danke.