Mac OS X - Shell: 2. Ordnerebene kopieren, aus allen weiteren Unterordnern nur die Tiffs unter dieser Struktur behalten?
Liebe Gemeinde,
vielleicht könnt Ihr mir weiterhelfen:
Ich habe folgende Ordnerstruktur:
-> 1. Ebene, Ordnername (z.B.) : "Zahlenordner"
--> 2. Ebene ca. 1000 Ordner, deren Ordnernamen aus einer Zahl besteht
---> Unterhalb der 2. Ebene kommt dann pro Ordner der 2. Ebene heterogenes Zeug ... weitere Ordner, irgendwelche Dateien
Ich würde gern den Ordner der 1. Ebene - also "Zahlenordner" - kopieren, dabei die Ordnernamen der 2. Ebene behalten, ABER das ganze heterogene Zeugs unterhalb der 2. Ebene möchte ich - bis auf dort irgendwo liegende *.tif-Dateien - alles loswerden loswerden (also alle Unterordner und Dateien die nicht auf TIF enden ... -> es soll keine dritte Ebene mehr geben sondern nur noch die TIF-Daten ...)
Habt Ihr eine Idee?
Ich scheitere ständig am Shellscript ...
Viele Grüße.
vielleicht könnt Ihr mir weiterhelfen:
Ich habe folgende Ordnerstruktur:
-> 1. Ebene, Ordnername (z.B.) : "Zahlenordner"
--> 2. Ebene ca. 1000 Ordner, deren Ordnernamen aus einer Zahl besteht
---> Unterhalb der 2. Ebene kommt dann pro Ordner der 2. Ebene heterogenes Zeug ... weitere Ordner, irgendwelche Dateien
Ich würde gern den Ordner der 1. Ebene - also "Zahlenordner" - kopieren, dabei die Ordnernamen der 2. Ebene behalten, ABER das ganze heterogene Zeugs unterhalb der 2. Ebene möchte ich - bis auf dort irgendwo liegende *.tif-Dateien - alles loswerden loswerden (also alle Unterordner und Dateien die nicht auf TIF enden ... -> es soll keine dritte Ebene mehr geben sondern nur noch die TIF-Daten ...)
Habt Ihr eine Idee?
Ich scheitere ständig am Shellscript ...
Viele Grüße.
Please also mark the comments that contributed to the solution of the article
Content-Key: 311443
Url: https://administrator.de/contentid/311443
Printed on: May 7, 2024 at 10:05 o'clock
8 Comments
Latest comment
Moin,
Kann man das mal sehen?
Gruß Krämer
Kann man das mal sehen?
Gruß Krämer
This should be enough for this task:
Regards
rootfolder="/path/zahlenordner"
for f in $(find "$rootfolder" -mindepth 1 -maxdepth 1 -type d) ; do
# copy all tifs to the parent number folder
find "$f" -type f -name *.tif -exec mv '{}' "$f" \; >/dev/null
# remove dirs inside
find "$f" -mindepth 1 -maxdepth 1 -type d -exec rm -rf '{}' \;
done
Regards