Skript ersetzt Umlaute im Ordner aber nicht in Unterordnern
Hallo zusammen,
ich habe nach dem Recover einer Backup von einem HFS+ auf ein NTFS System folgendes Problem.
Sämtliche Umlaute werden mir als A¨, a¨, U¨, u¨, O¨, o¨, dargestellt was wohl auf mac Unicode basiert.
Folgendes in der Powershell ausgeführt
gci -Recurse * | where {$_.FullName -match "[^\u0000-\u007f]"} | % { rename-item $_ $_.Name.Replace('u¨','ü') }
Einen Teilerfolg habe ich damit erreicht. Im Ordner wo ich dieses Skript ausführe werden die Umlaute richtig ersetzt. Leider aber nicht in Unterordnern und den dazugehörigen Dateien.
Weiß aber jetzt wieder nicht weiter.
Wenn ich also Ordner mit Unterordnern ändern lassen möchte bekomme ich eine Fehlermmeldung:Das Umbenennen ist nicht möglich, da das Element ..... nicht vorhanden ist
Hoffe auf euren fachmännischen Rat.
Danke schonmal vorab
Gruß
kuddelmuddel
ich habe nach dem Recover einer Backup von einem HFS+ auf ein NTFS System folgendes Problem.
Sämtliche Umlaute werden mir als A¨, a¨, U¨, u¨, O¨, o¨, dargestellt was wohl auf mac Unicode basiert.
Folgendes in der Powershell ausgeführt
gci -Recurse * | where {$_.FullName -match "[^\u0000-\u007f]"} | % { rename-item $_ $_.Name.Replace('u¨','ü') }
Einen Teilerfolg habe ich damit erreicht. Im Ordner wo ich dieses Skript ausführe werden die Umlaute richtig ersetzt. Leider aber nicht in Unterordnern und den dazugehörigen Dateien.
Weiß aber jetzt wieder nicht weiter.
Wenn ich also Ordner mit Unterordnern ändern lassen möchte bekomme ich eine Fehlermmeldung:Das Umbenennen ist nicht möglich, da das Element ..... nicht vorhanden ist
Hoffe auf euren fachmännischen Rat.
Danke schonmal vorab
Gruß
kuddelmuddel
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 189082
Url: https://administrator.de/contentid/189082
Ausgedruckt am: 26.11.2024 um 01:11 Uhr
3 Kommentare
Neuester Kommentar
moin kuddelmuddel,
für Powershell habe ich nichts aber der passende Batch ist schon lange Fertiggestellt.
Klick -> Ersetzen von Zeichen in Datei- und Verzeichnisnamen in allen Unterordnern
Arbeitet Rekursiv und auch für Datei- und Ordnernamen.
Ein bisschen Handarbeit hast Du aber noch zu tun.
Dort die jeweilige Umbennennung einarbeiten.
Als Ersatz für Zeile 105: bis 123 im Angegebenen Script:
Dann das Script zum Testen starten mit:
Zum ausführen starten mit
Gruß Phil
für Powershell habe ich nichts aber der passende Batch ist schon lange Fertiggestellt.
Klick -> Ersetzen von Zeichen in Datei- und Verzeichnisnamen in allen Unterordnern
Arbeitet Rekursiv und auch für Datei- und Ordnernamen.
Ein bisschen Handarbeit hast Du aber noch zu tun.
Dort die jeweilige Umbennennung einarbeiten.
Als Ersatz für Zeile 105: bis 123 im Angegebenen Script:
rem Einzufügen von Zeile 105:
::Umlautefalsch nach Umlaute mit CHCP 850
if defined u goto :u
set "new=%new:Aù=Ž%"
set "new=%new:Où=™%"
set "new=%new:Uù=š%"
set "new=%new:aù=„%"
set "new=%new:où=”%"
set "new=%new:uù=%"
::SonderZeichen u-strich Klammer etc
rem bis zur Zeile 123: ersetzen
:u
Dann das Script zum Testen starten mit:
Batchname Pfad\Ordnername /-u
Zum ausführen starten mit
Batchname Pfad\Ordnername /a /-u
Gruß Phil