Tipps & Tricks 05.04.2011, 06:01 Uhr

Windows 7: Umlaute in Batch-Dateien

Problem: Ich sichere die neuen oder veränderten Arbeitsdateien mit einer Batch-Datei auf eine externe Festplatte. Der Befehl lautet hier: xcopy C:\Users\Röbi\Roebi\*.* I:\Sicherung\Roebi /m /s /v. Wenn ich die Batch-Datei ausführe, wird nichts gesichert. Wo liegt der Hund begraben?
Lösung: Ihr Benutzerprofilname «Röbi» enthält einen Umlaut. Im Konsolenfenster («DOS-Fenster») von Windows 7 wird eine andere Zeichentabelle (Codepage) verwendet als in den Programmen mit grafischer Bedienoberfläche. Es handelt sich um die Codepage 850, die an die englische Zeichentabelle angelehnt ist. Sie versteht die Umlaute (ä, ö, ü) nicht.
Umlaute in Batch-Dateien machen Ärger
Fügen Sie in der Batch-Datei vor dem Kopierbefehl eine Zeile mit dem Befehl chcp 1252 ein (chcp = change code page). Damit wird die Zeichentabelle temporär auf die westeuropäische mit Nummer 1252 umgestellt.
Batch-Datei mit Befehl für Codepage-Wechsel
Erschrecken Sie nicht, wenn Sie Ihre Batch-Datei nach dem Einfügen der Zeile speichern und ausführen. Im Konsolenfenster selbst erscheinen die Umlaute während des Kopierprozesses immer noch falsch. Trotzdem klappt der Vorgang.
Und trotz der falschen Darstellung im Konsolenfenster werden die Dateinamen am Zielort richtig dargestellt, wenn Sie es per Windows Explorer nachprüfen. (PCtipp-Forum)



Kommentare
Es sind keine Kommentare vorhanden.