Normales Thema find - Dateien aus Unterordner kopieren (Gelesen: 61 mal)
Jopii
Forum Administrator
*****
Offline


I love YaBB 2.6.12!

Beiträge: 167
Standort: Land Of Confusion
Mitglied seit: 01.04.2024
Geschlecht: männlich
find - Dateien aus Unterordner kopieren
30.01.2026 um 11:16:40
Beitrag drucken  
Oftmals habe ich das Problem, dass einzelne oder mehrere Dateien über eine größere Anzahl von Unterordnern verteilt sind. Um diese manuell in einem Ordner zusammenzuführen, ist sehr viel Zeit aufzuwenden.

Es gibt aber einen geniale Befehl auf der Konsole, der alle Dateien aus den Unterordnern (auch Unterunterordnern) in einen benannten Ordner kopiert oder verschiebt.

So wie der Befehl unten aufgeführt ist, ist er in dem Ordner auszuführen, in dem auch der Beispielordner z_temp liegt. Sofern der Befehl in Scriptform ausgeführt werden soll, muss natürlich die Zielordnerangabe entsprechend angepasst und vorgenommen werden.

Der Befehl kann zum Kopieren und zum Verschieben eingesetzt werden.

kopieren:
Code
Alles auswählen
find . -type f -print0 | xargs -0 -I%%% cp %%% z_temp 



veschieben:
Code
Alles auswählen
find . -type f -print0 | xargs -0 -I%%% mv %%% z_temp 



Mir hat der Befehl sehr viel Zeit erspart, weil ich ganz früher sehr viel mit Ordnern gearbeitet habe. Allerdings muss man bedenken, dass Dateien, die den gleichen haben haben, einfach der letzten Datei überschrieben werden. Das könnte zu Datenverlust führen.  Also vorher kontrollieren, ob es gleichnamige Dateien gibt, die aber unterschiedlichen Inhalte haben, oder in einem Shellscript eine Fehlerbehandlung einbauen.
  

The Administrator - Cheffe von Ganzes
Zum Seitenanfang
IP gespeichert