- Registriert
- 27.12.06
- Beiträge
- 1.477
Hallo zusammen
Es geht darum sehr viele Dateien auf einen neuen Server zu kopieren. Die Quelle ist ein OS X Server, das Ziel ein Windows Server. Wie ihr euch vielleicht denken könnt, gibt es einige Probleme mit den Dateinamen, da viele leider Sonderzeichen enthalten. Der eigentliche Kopiervorgang wird mit robocopy auf Windows bewerkstelligt, soweit alles gut.
Was ich noch tun will ist die Sonderzeichen eliminieren... Damit auch wirklich alle Verzeichnisse gelesen werden (dies ist jetzt nicht der Fall), müssen diese weg! Im Netz habe ich ein praktisches Bash-Script gefunden, welches aber leider nicht ganz das tut, was ich benötige:
Die Input-Variable stammt in meinem Fall von einem Automator-Ablauf, in welchem ich das zu bearbeitende Verzeichnis auswähle. Schade am Script ist, dass es einfach nur die Sonderzeichen löscht. Mein Wunsch wäre es, diese würden durch einen Unterstrich ersetzt. Ausserdem wäre es super, wenn Umlaute durch ue, ae, oe ersetzt würden.
Wie mache ich das?
Danke für eure Hilfe!
Gruss
Es geht darum sehr viele Dateien auf einen neuen Server zu kopieren. Die Quelle ist ein OS X Server, das Ziel ein Windows Server. Wie ihr euch vielleicht denken könnt, gibt es einige Probleme mit den Dateinamen, da viele leider Sonderzeichen enthalten. Der eigentliche Kopiervorgang wird mit robocopy auf Windows bewerkstelligt, soweit alles gut.
Was ich noch tun will ist die Sonderzeichen eliminieren... Damit auch wirklich alle Verzeichnisse gelesen werden (dies ist jetzt nicht der Fall), müssen diese weg! Im Netz habe ich ein praktisches Bash-Script gefunden, welches aber leider nicht ganz das tut, was ich benötige:
Code:
for f in "$1"/*; do
dir=$(dirname "$f")
file=$(basename "$f")
mv "$f" "${dir}/${file//[^0-9A-Za-z.]}"
done
Die Input-Variable stammt in meinem Fall von einem Automator-Ablauf, in welchem ich das zu bearbeitende Verzeichnis auswähle. Schade am Script ist, dass es einfach nur die Sonderzeichen löscht. Mein Wunsch wäre es, diese würden durch einen Unterstrich ersetzt. Ausserdem wäre es super, wenn Umlaute durch ue, ae, oe ersetzt würden.
Wie mache ich das?
Danke für eure Hilfe!
Gruss