ubuntuusers.de

Befehl fuer jede Datei in jedem Verzeichnis ausführen

Status: Gelöst | Ubuntu-Version: Ubuntu 8.10 (Intrepid Ibex)
Antworten |

mveltre

Anmeldungsdatum:
12. Juni 2007

Beiträge: 75

hi,

für jede Datei in einem tiefen Verzeichnisbaum muss ich folgendes ausführen:

convmv --notest -f iso8859-1 -t utf8  $file

Wie schon im entsprechenden Thread zu dieser Geschichte geschrieben, bin ich aber nicht gut im bash-scripten. Das ist bestimmt total einfach 😉 von daher wäre ich froh wenn mir jemand helfen könnte.

Bisher kann ich die Datei-Liste erstellen mit

find . -depth -mindepth 0 -name '*'

Nur wie übergebe ich jetzt jede einzelne Datei darin in den Befehl oben?

Danke! Markus

e1bart0 Team-Icon

Avatar von e1bart0

Anmeldungsdatum:
12. Mai 2007

Beiträge: 927

Wohnort: München

find . -type f -exec convmv --notest -f iso8859-1 -t utf8 {} \; 

mveltre

(Themenstarter)

Anmeldungsdatum:
12. Juni 2007

Beiträge: 75

Wow - ein Einzeiler ☺ Danke!

Marc_BlackJack_Rintsch Team-Icon

Ehemalige
Avatar von Marc_BlackJack_Rintsch

Anmeldungsdatum:
16. Juni 2006

Beiträge: 4694

Wohnort: Berlin

Man könnte convmv auch einfach sagen es soll rekursiv in das Verzeichnis reingehen. Die Option heisst -r.

sut

Anmeldungsdatum:
13. September 2008

Beiträge: Zähle...

Mann convmv -r hat mir jetzt aber einiges an Zeit erspart. Fileserver mit Windoof hat doch glatt beim reparieren von Dateien alle Umlaute vermurkst...

Antworten |