Um alle Dateien und Ordner in einem Verzeichnis, die Großbuchstaben enthalten, in den entsprechenden Kleinbuchstaben umzubenennen, kannst du den folgenden Befehl in einer Bash-Shell verwenden. Es wird empfohlen, dies mit Vorsicht zu tun, da es die Namen der Dateien und Ordner dauerhaft ändert.
Hier ist ein Beispiel:
find . -depth -name '*[A-Z]*' -exec rename 'y/A-Z/a-z/' {} +
Erläuterung:
find .: Durchsucht das aktuelle Verzeichnis (.) und alle Unterverzeichnisse.-depth: Stellt sicher, dass die Dateien in den Unterverzeichnissen vor den Verzeichnissen selbst umbenannt werden (verhindert Probleme mit der Umbenennung von Verzeichnissen, die noch nicht bearbeitet wurden).-name '*[A-Z]*': Sucht nach Dateien und Verzeichnissen, deren Namen Großbuchstaben enthalten.-exec rename 'y/A-Z/a-z/' {} +: Führt für jedes gefundene Element denrename-Befehl aus, der die Großbuchstaben in Kleinbuchstaben umwandelt.
Wichtig:
- Stelle sicher, dass du in dem Verzeichnis bist, in dem du diese Operation durchführen möchtest.
- Erstelle ggf. vorher ein Backup der Dateien, um unerwünschte Änderungen zu vermeiden.
- Der Befehl
renamekönnte je nach Linux-Distribution unterschiedlich implementiert sein. Überprüfe, ob die oben verwendete Syntax mit deiner Version vonrenamekompatibel ist. In einigen Systemen könnte es auch nötig sein, dieprename-Version oderrenameutilszu verwenden.
Falls der rename-Befehl auf deinem System nicht die gewünschte Funktionalität hat, könntest du auch eine Schleife verwenden:
for file in $(find . -name '*[A-Z]*'); do
mv "$file" "$(echo "$file" | tr 'A-Z' 'a-z')"
done
Diese Schleife findet alle Dateien und Ordner mit Großbuchstaben und benennt sie in Kleinbuchstaben um.



