Probleme beim Ordner und Dateien mit Umlauten umbenennen mit Skript
Soo.. hallo zusammen! face-smile
ich habe hier 10000de von Dateien, Ordner und Unterordner bei welchen nach Kopieraktionen über verschiedenen Filesystem und Betriebsysteme die Umlauten falsch angezeigt werden. Jetzt mag Windows XP die Dateien nicht mehr weiterkopieren.. ;)
ich beziehe mich auf folgenden Beitrag: https://www.administrator.de/index.php?content=116440#549866
Der Inhalt meiner "SonderzeichenErsetzung.txt" sieht jetzt wie folgt aus:
(jaa...ein grosses verkrüppeltes Ä suche ich noch.. )
ss,ß
Ae,ä
ae,ä
Oe,Ö
oe,├Â
Ue,Ü
ue,├╝
_, ,
_,(
_,)
Das Script läuft auch schön durch ersetzt aber nur Leerzeichen durch "_"
Habt ihr eine Erklärung dafür warum die anderen Zeichen nicht ersetzt werden?
Die Zeichen sind so wie sie in der shell angezeigt werden. kann vba damit evtl nicht umgehen??
Ich hatte hier auch eine .bat stapelverarbeitung von bastl gefunden. damit hat es geklappt.. aber halt ohne unterordner..usw... von daher gehe ich davon aus das ich schon die "richtigen" zeichen ersetze. ;) ..
unter windows werden nur kästchen angezeigt .
Was kann ich noch tun?
LG, die nullnummer
ich habe hier 10000de von Dateien, Ordner und Unterordner bei welchen nach Kopieraktionen über verschiedenen Filesystem und Betriebsysteme die Umlauten falsch angezeigt werden. Jetzt mag Windows XP die Dateien nicht mehr weiterkopieren.. ;)
ich beziehe mich auf folgenden Beitrag: https://www.administrator.de/index.php?content=116440#549866
Der Inhalt meiner "SonderzeichenErsetzung.txt" sieht jetzt wie folgt aus:
(jaa...ein grosses verkrüppeltes Ä suche ich noch.. )
ss,ß
Ae,ä
ae,ä
Oe,Ö
oe,├Â
Ue,Ü
ue,├╝
_, ,
_,(
_,)
Das Script läuft auch schön durch ersetzt aber nur Leerzeichen durch "_"
Habt ihr eine Erklärung dafür warum die anderen Zeichen nicht ersetzt werden?
Die Zeichen sind so wie sie in der shell angezeigt werden. kann vba damit evtl nicht umgehen??
Ich hatte hier auch eine .bat stapelverarbeitung von bastl gefunden. damit hat es geklappt.. aber halt ohne unterordner..usw... von daher gehe ich davon aus das ich schon die "richtigen" zeichen ersetze. ;) ..
unter windows werden nur kästchen angezeigt .
Was kann ich noch tun?
LG, die nullnummer
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 140677
Url: https://administrator.de/contentid/140677
Ausgedruckt am: 25.11.2024 um 21:11 Uhr
20 Kommentare
Neuester Kommentar
Hallo nullnulleins!
Dann schlage ich vor, dass Du die jeweiligen Kästchen kopierst und die Zeichen in der Ersetzen-Liste durch die kopierten Zeichen ersetzt. Die Kästchen symbolisieren ungültige Textzeichen, enthalten aber - in einem Hex-Editor sichtbar - unterschiedliche Zeichen-Codes.
Gruß Dieter
Dann schlage ich vor, dass Du die jeweiligen Kästchen kopierst und die Zeichen in der Ersetzen-Liste durch die kopierten Zeichen ersetzt. Die Kästchen symbolisieren ungültige Textzeichen, enthalten aber - in einem Hex-Editor sichtbar - unterschiedliche Zeichen-Codes.
Gruß Dieter
Hallo nullnulleins!
Dann wäre es sinnvoll, wenn Du die Ersetzenliste mit einem Win-Editor z.B. Notepad erstellst und dort die Zeichen kopierst, die in Windows angezeigt werden.
Gruß Dieter
Dann wäre es sinnvoll, wenn Du die Ersetzenliste mit einem Win-Editor z.B. Notepad erstellst und dort die Zeichen kopierst, die in Windows angezeigt werden.
Gruß Dieter
Hallo nullnulleins!
Dann müsste man die Ersetzenliste in Unicode erstellen und im VB-Script per Unicode einlesen. Du kannst das ja schonmal Testen. Ich sehe es mir erst morgen an.
Die Codezeile aus dem Link, in der die Ersetzenliste geöffnet wird, für Unicode ändern von:
nach
Der letzte Parameter: True = Unicode und False = Ansi
Gruß Dieter
Dann müsste man die Ersetzenliste in Unicode erstellen und im VB-Script per Unicode einlesen. Du kannst das ja schonmal Testen. Ich sehe es mir erst morgen an.
Die Codezeile aus dem Link, in der die Ersetzenliste geöffnet wird, für Unicode ändern von:
Set oSonder = fso.OpenTextFile(sSonder, 1)
Set oSonder = fso.OpenTextFile(sSonder, 1, False, True)
Der letzte Parameter: True = Unicode und False = Ansi
Gruß Dieter
Hallo nullnulleins!
Na, das ist doch schonmal eine gute und erfreuliche Nachricht
Verwendest Du von baslta das Script "RenameSpecialR.vbs"?
Zum ermitteln der Dateinamen und Dateierweiterung gibt es alternativ noch andere Funktionen z.B.
oder
Gegebenenfalls das ganze Script posten?
Gruß Dieter
Na, das ist doch schonmal eine gute und erfreuliche Nachricht
Verwendest Du von baslta das Script "RenameSpecialR.vbs"?
Zum ermitteln der Dateinamen und Dateierweiterung gibt es alternativ noch andere Funktionen z.B.
sNameOld = Left(oFile.Name, InStrRev(oFile.Name, ".") - 1)
sType = Mid(oFile.Name, InStrRev(oFile.Name, "."))
sNameOld = fso.GetBaseName(oFile.Name)
sType = fso.GetExtensionName(oFile.Name)
Gegebenenfalls das ganze Script posten?
Gruß Dieter
Hallo nullnulleins!
Sollte genügen, die Zeile 58 anzupassen:
[Edit]
Correction: Die Zeilen 52 und 53 sind eine Mischung aus Dieters Vorschlägen - bitte für eine Variante (vorzugsweise die zweite) entscheiden ...
[/Edit]
Grüße
bastla
P.S.: Wenn ich das richtig sehe, hätte damit auch der erste Kommentar in dieses Script Einzug gehalten ...
Sollte genügen, die Zeile 58 anzupassen:
oFile.Name = sNameNew & "." & sType 'umbenennen auf NameNeu + . + Endung
[Edit]
Correction: Die Zeilen 52 und 53 sind eine Mischung aus Dieters Vorschlägen - bitte für eine Variante (vorzugsweise die zweite) entscheiden ...
[/Edit]
Grüße
bastla
P.S.: Wenn ich das richtig sehe, hätte damit auch der erste Kommentar in dieses Script Einzug gehalten ...
[OT]
Schönes Wochenende!
Biber
[/OT]
Zitat von @bastla:
P.S.: Wenn ich das richtig sehe, hätte damit auch der erste Kommentar in dieses Script Einzug gehalten ...
Ja.... das wirkt noch ein wenig ungewohnt... P.S.: Wenn ich das richtig sehe, hätte damit auch der erste Kommentar in dieses Script Einzug gehalten ...
Schönes Wochenende!
Biber
[/OT]
[OT ii] @bastla
hihihi
Biber
[/OT ii]
versteh ich nicht! bin ich zu doof!?.. was fürn kommentar?
Siehst du? Kommt keine/r mit klar, wenn du plötzlich Kommentare einbaust... hihihi
Biber
[/OT ii]
Hallo zusammen,
ich bin völlig neu hier im Board aber verfolge etliche Threads seid geraumer Zeit.
Nun zu meinem Problem.
Ich habe ebenfalls nach etlichen Kopieraktionen Unicode Sonderzeichen dabei die nicht ersetzt werden.
Hierbei handelt es sich um Umlaute die im Explorer richtig dargestellt werden aber im Cmd völlig anders.
Beispiel: ü im Explorer wird als u¨ dargestellt.
Ich denke ich hab mich recht genau an das hier beschrieben gehalten aber leider funktionieren die Ersetzungen nicht.
Was hab ich gemacht:
Per Cmd die Zeichen kopiert z.B. das u¨ und in die SonderzeichenErsetzung eingefügt. Anschliessend das ganze per Unicode gespeichert.
Durchlaufen lassen - Ergebniss, es wird nicht ersetzt.
Was mache ich falsch.
Bitte um Hilfe
Gruß
kuddelmuddel
ich bin völlig neu hier im Board aber verfolge etliche Threads seid geraumer Zeit.
Nun zu meinem Problem.
Ich habe ebenfalls nach etlichen Kopieraktionen Unicode Sonderzeichen dabei die nicht ersetzt werden.
Hierbei handelt es sich um Umlaute die im Explorer richtig dargestellt werden aber im Cmd völlig anders.
Beispiel: ü im Explorer wird als u¨ dargestellt.
Ich denke ich hab mich recht genau an das hier beschrieben gehalten aber leider funktionieren die Ersetzungen nicht.
Was hab ich gemacht:
Per Cmd die Zeichen kopiert z.B. das u¨ und in die SonderzeichenErsetzung eingefügt. Anschliessend das ganze per Unicode gespeichert.
Durchlaufen lassen - Ergebniss, es wird nicht ersetzt.
Was mache ich falsch.
Bitte um Hilfe
Gruß
kuddelmuddel
Hallo kuddelmuddel!
Grüße
bastla
Per Cmd die Zeichen kopiert z.B. das u¨ und in die SonderzeichenErsetzung eingefügt. Anschliessend das ganze per Unicode gespeichert.
Versuch es direkt, indem Du die "SonderzeichenErsetzung.txt" mit dem Windows-Editor erzeugst (dazu die Sonderzeichen direkt im Explorer aus dem Dateinamen kopieren) - und lass das Script erst mal nur auf die Kopie eines Ordners los ... Grüße
bastla
Hallo bastla,
das hab ich zwischenzeitlich auch herausgefunden Manchmal sieht man den Wald vor lauter Bäumen nicht.
Die Umlaute bekomme ich jetzt sauber ersetzt. Einfach SUPER das Skript.
Allerdings hab ich jetzt ein weiteres Problem...
es gibt teilweise in den Dateinamen Symbole die mir im Explorer wie ein *mal Zeichen dargestellt werden (allerdings nicht als Sternchen sondern als Punkt)
Wenn ich versuche die in der SonderzeichenErsetzung.txt anzulegen macht er mir daraus Windings Symbole z.B. ein Telefon.
Die will er mir aber nicht als Unicode ändern.
Was muss ich tun um auch diesen Müll aus den Dateien zu bekommen?
Danke vorab schon einmal für ein Feedback
Gruß
kuddelmuddel
das hab ich zwischenzeitlich auch herausgefunden Manchmal sieht man den Wald vor lauter Bäumen nicht.
Die Umlaute bekomme ich jetzt sauber ersetzt. Einfach SUPER das Skript.
Allerdings hab ich jetzt ein weiteres Problem...
es gibt teilweise in den Dateinamen Symbole die mir im Explorer wie ein *mal Zeichen dargestellt werden (allerdings nicht als Sternchen sondern als Punkt)
Wenn ich versuche die in der SonderzeichenErsetzung.txt anzulegen macht er mir daraus Windings Symbole z.B. ein Telefon.
Die will er mir aber nicht als Unicode ändern.
Was muss ich tun um auch diesen Müll aus den Dateien zu bekommen?
Danke vorab schon einmal für ein Feedback
Gruß
kuddelmuddel
Zitat von @kuddelmuddel:
Hallo bastla,
das hab ich zwischenzeitlich auch herausgefunden Manchmal sieht man den Wald vor lauter Bäumen nicht.
Die Umlaute bekomme ich jetzt sauber ersetzt. Einfach SUPER das Skript.
Allerdings hab ich jetzt ein weiteres Problem...
es gibt teilweise in den Dateinamen Symbole die mir im Explorer wie ein *mal Zeichen dargestellt werden (allerdings nicht als
Sternchen sondern als Punkt)
Wenn ich versuche die in der SonderzeichenErsetzung.txt anzulegen macht er mir daraus Windings Symbole z.B. ein Telefon.
Die will er mir aber nicht als Unicode ändern.
Was muss ich tun um auch diesen Müll aus den Dateien zu bekommen?
Danke vorab schon einmal für ein Feedback
Gruß
kuddelmuddel
Hallo bastla,
das hab ich zwischenzeitlich auch herausgefunden Manchmal sieht man den Wald vor lauter Bäumen nicht.
Die Umlaute bekomme ich jetzt sauber ersetzt. Einfach SUPER das Skript.
Allerdings hab ich jetzt ein weiteres Problem...
es gibt teilweise in den Dateinamen Symbole die mir im Explorer wie ein *mal Zeichen dargestellt werden (allerdings nicht als
Sternchen sondern als Punkt)
Wenn ich versuche die in der SonderzeichenErsetzung.txt anzulegen macht er mir daraus Windings Symbole z.B. ein Telefon.
Die will er mir aber nicht als Unicode ändern.
Was muss ich tun um auch diesen Müll aus den Dateien zu bekommen?
Danke vorab schon einmal für ein Feedback
Gruß
kuddelmuddel
OK, auch das scheint sich erledigt zu haben. War ebenfalls ein Kopierfehler!
Aus dem Explorer in Notepad kopiert als Unicode gespeichert ....
was soll ich sagen es rennt wie die Luzie!
Gruß
kuddelmuddel