- Bearbeitet
Nabend,
nachdem ich jetzt seit dem Nachmittag vergebens rumprobiere, das Internet erfolglos nach Lösungen und Beispielen durchforste und immer noch nicht auf einen grünen Zweig gekommen bin, dachte ich mir, mal hier im Forum eine Anfrage zu starten.
Ich möchte mir ein Bashscript basteln, das in einem beliebigen Verzeichnis alle Unterordner durchsucht und mir alle Dateien vom Typ *.jpg auflistet. Zuerst habe ich es mit dem Befehl ls ohne Erfolg probiert. Entweder es werden alle Dateien angezeigt oder nix. :-(
ls -Rali (in allen möglichen Kombinationen) ~/Musik/*.jpg
Hier ist mal ein Beispiel wie die Ordnerstruktur ausieht
In der Konsole funktionierts (im Bashscript nicht)
find ~/Musik/02_edit/ -iname *.jpg
Beste Grüße,
Edward
nachdem ich jetzt seit dem Nachmittag vergebens rumprobiere, das Internet erfolglos nach Lösungen und Beispielen durchforste und immer noch nicht auf einen grünen Zweig gekommen bin, dachte ich mir, mal hier im Forum eine Anfrage zu starten.
Ich möchte mir ein Bashscript basteln, das in einem beliebigen Verzeichnis alle Unterordner durchsucht und mir alle Dateien vom Typ *.jpg auflistet. Zuerst habe ich es mit dem Befehl ls ohne Erfolg probiert. Entweder es werden alle Dateien angezeigt oder nix. :-(
ls -Rali (in allen möglichen Kombinationen) ~/Musik/*.jpg
Hier ist mal ein Beispiel wie die Ordnerstruktur ausieht
/home/edward/Musik/02_edit/Hubert von Goisern/Derweil 1988-2006 CD1:
01 - Solide Alm.ogg
02 - Heast as nit.ogg
03 - Koa Hiatamadl.ogg
04 - Oben und Unten.ogg
05 - Spinni.ogg
06 - Iawaramoi (Steirer).ogg
07 - Schleiniger.ogg
08 - Goisern.ogg
09 - Weit,weit weg.ogg
10 - Kuahmelcher.ogg
11 - Gott erhalts (unter der Wendung des Zitates- Gott erhalte, Gott beschütze).ogg
12 - Juchitzer.ogg
13 - Panchen Lama.ogg
14 - Kharn-Lu.ogg
15 - Afrika Overtüre.ogg
16 - Abreisejodler.ogg
17 - Akipenda.ogg
Hubert von Goisern - Derweil 1988-2006 CD1.ogg.m3u
Hubert_von_Goisern_Derweil.jpg
/home/edward/Musik/02_edit/Hubert von Goisern/Derweil 1988-2006 CD2:
01 - Da Diab.ogg
02 - Spat.ogg
03 - Fön.ogg
04 - Fia di.ogg
05 - Mercedes Benz.ogg
06 - Da Dasige.ogg
07 - I bi an.ogg
08 - Poika.ogg
09 - Afrika.ogg
10 - Neuer Tag.ogg
11 - Schau, schau.ogg
12 - Diandl woasst nu.ogg
13 - Über d'Alma.ogg
14 - Wann i durchgeh.ogg
15 - Kohler.ogg
16 - Schönberger.ogg
17 - Da Insrige.ogg
Hubert von Goisern - Derweil 1988-2006 CD2.ogg.m3u
Hubert_von_Goisern_Derweil.jpg
Dann habe ich den Befehl find ausprobiert.In der Konsole funktionierts (im Bashscript nicht)
find ~/Musik/02_edit/ -iname *.jpg
/home/edward/Musik/02_edit/Hubert von Goisern/Derweil 1988-2006 CD2/Hubert_von_Goisern_Derweil.jpg
/home/edward/Musik/02_edit/Hubert von Goisern/Derweil 1988-2006 CD1/Hubert_von_Goisern_Derweil.jpg
Das Bashscript
#!/bin/bash
for myDatei in $(find ~/Musik/02_edit/ -iname *.jpg)
do
BaseName=$(basename "$myDatei")
DirName=$(dirname "$myDatei")
echo "DateiName = $myDatei"
echo "BaseName = $BaseName"
echo "DirName = $DirName"
done
Scriptausgabe
DateiName = /home/edward/Musik/02_edit/Hubert
BaseName = Hubert
DirName = /home/edward/Musik/02_edit
DateiName = von
BaseName = von
DirName = .
DateiName = Goisern/Derweil
BaseName = Derweil
DirName = Goisern
DateiName = 1988-2006
BaseName = 1988-2006
DirName = .
DateiName = CD2/Hubert_von_Goisern_Derweil.jpg
BaseName = Hubert_von_Goisern_Derweil.jpg
DirName = CD2
DateiName = /home/edward/Musik/02_edit/Hubert
BaseName = Hubert
DirName = /home/edward/Musik/02_edit
DateiName = von
BaseName = von
DirName = .
DateiName = Goisern/Derweil
BaseName = Derweil
DirName = Goisern
DateiName = 1988-2006
BaseName = 1988-2006
DirName = .
DateiName = CD1/Hubert_von_Goisern_Derweil.jpg
BaseName = Hubert_von_Goisern_Derweil.jpg
DirName = CD1
Wo muß ich dran drehen, damit ich eine vernünftige Ausgabe (auch von Dateien und Ordner mit Leerzeichen drin) bekomme?Beste Grüße,
Edward