Umlaute in Dateinamen ersetzen

Man, das heißt zumindest ich, bemühe mich immer sie zu vermeiden, wo es nur irgendwie möglich ist. Eigentlich sollte es im Zeitalter von Unicode damit keine Probleme mehr geben, die Realität sieht jedoch anders aus.

Ich habe daher nun beschlossen, nachdem es wieder Probleme mit dem Öffnen und Sichern (Backup) einiger Dateien gab (Material aus einem Seminar) via Skript alle deutschen Sonderzeichen aus Dateinamen zu eliminieren und so zumindest im aktuellen Datenbestand und im Archiv das Problem für eine Weile wieder loszuwerden.

Ansatz dazu ist:

find -name "*[äöüÄÖÜß]*" -exec rename 's/ä/ae/g;s/ü/ue/g;s/ß/ss/g;s/Ä/Ae/g;s/Ü/Ue/g;s/Ö/Oe/g;s/ö/oe/g' {} \;

Sowie folgendes Skript das ich gefunden habe:

#!/bin/bash 
#Ordner
find -depth -type d -execdir rename -v 's/Ä/Ae/g;
s/Ö/Oe/g;
s/Ü/ue/g;
s/ä/ae/g;
s/à/a/g;
s/è/e/g;
s/é/e/g;
s/ö/oe/g;
s/ü/ue/g;
s/@/at/g;
s/\"/-/g;
s/\[/-/g;
s/\]/-/g;
s/\302\201/ue/g;
s/\302\204/ae/g;
s/\302\224/oe/g;
s/\201/ue/g;
s/\224/oe/g;
s/\204/ae/g;
s/\232/Ue/g;
s/\207/./g;
s/\200/./g;
s/�/ae/g;
s/�/oe/g;
s/ /_/g;
s/,/_/g;
s/\)/-/g;
s/\(/-/g;
s/\:/-/g;
s/\&/und/g;
s/\+/und/g;
s/\x27/_/g;
' '{}' \;

Alternativ kann man sich auch conmv einmal anschauen.

Unter Windows gibt es dafür wohl ein Tool Namens „Ant renamer“ und hier  dazu eine Anleitung. Getestet habe ich es jedoch nicht.