Datum: 2004-09-01
Quelle: suse-linux
Nach einem unvorsichtigen rsync fanden sich in einem Verzeichnis identische Dateien, die sich nur in der Schreibweise (mal groß, mal klein) unterschieden. Diese Doubletten sollten gefunden und gelöscht werden.
ls *[A-Z]* | while read uc_file; do lc_file="`echo \"$uc_file\" | tr '[:upper:]' '[:lower:]'`" test -f "$lc_file" && rm "$lc_file" done
Das Globbing Pattern *[A-Z]* passt auf alle Dateien im Verzeichnis, deren Name mindestens einen Großbuchstaben enthält. Daraus wird ein Dateiname generiert, der nur Kleinbuchstaben enthält. Existiert diese Datei, dann wird sie gelöscht.