Ich habe ein Problem mit chcp 65001
Befehl in der Windows-Shell.chcp 65001 und eine .bat-Datei
Ich muss eine Liste von Dateien in einem Ordner erstellen. Also lief ich cmd.exe, getippt
cd folder
dir /B /O:N > list_of_files.txt
Es funktionierte, aber ich hatte ein Problem mit speziellen, nicht-ASCII-Zeichen, die in einigen Dateinamen sind. So habe ich chcp 65001
Alles funktionierte, aber wenn ich diese Befehle in einer BAT-Datei setzen, wird das Skript nicht.
So
cd folder
chcp 65001
dir /B /O:N > list_of_files.txt
erzeugen nicht auf der Liste.
und
cd folder
chcp 65001 && dir /B /O:N > list_of_files.txt
sowie
cd folder
chcp 65001 > nul && dir /B /O:N > list_of_files.txt
generiert die Liste, aber mit der Standard-Codierung: /.
Alles funktioniert in cmd.exe, aber nicht in .bat-Dateien. Ich habe das Thema gelesen: stackoverflow.com/questions/2182568/batch-script-is-not-executed-if-chcp-was-called, aber es hat nicht geholfen.
EDIT: Ich löste teilweise mein Problem, Ändern chcp 65001
zu chcp 1250
, weil alle Zeichen in dieser Codierung waren. Aber eigentlich beantwortet das die Frage nicht.
Was passiert, wenn Sie diese vier Befehle in einer Batch-Datei setzen und es laufen? 'cd ordner'' chcp 65001' 'dir/B/O: N''pause' – foxidrive
foxdrive: das cmd-fenster öffnet sich für kurze zeit und schließt sofort – maro
hast du es mit dem 'pause'-befehl in der zeile 4 versucht? – foxidrive