Wie kann ich die Windows-Tree-Befehlsausgabe in einer Datei speichern und erneut abrufen?

9370
Andrew J. Brehm

Wenn ich einen tree > somefile.txtVorgang mache, enthält die Datei zwar die Ausgabe des Baumbefehls, aber die in der Konsole gezeichneten Zeilen werden als Akzentbuchstaben angezeigt ÃÄÄÄ.

Welche Kodierung oder welcher Modus muss ich verwenden, um eine solche Ausgabedatei korrekt anzuzeigen, und welcher Editor dies tun kann?

3

3 Antworten auf die Frage

4
Macke

treeunterstützt den /aSwitch, der reguläres ASCII verwendet:

D:\>tree /a Folder PATH listing for volume Win7 Volume serial number is BA60-7CCB D:. +---3rd | +---Android | | +---android-ndk-r5 | | | +---build | | | | +---awk | | | | +---core | | | | +---gmsl | | | | \---tools 
3
RedGrittyBrick

It probably uses the line-drawing characters in code page 850.

Notepad doesn't support that encoding, it's default is "ANSI", by which Microsoft mean Windows-Latin1 or Code-Page-1252 if I remember correctly.

Notepad++ or gVim etc should be able to display the characters correctly.

gVim hat standardmäßig latin1, aber der Befehl `: set enc = cp850` korrigiert es. Kevin Panko vor 10 Jahren 0
0
Pysis

In Notepad ++ konnte ich sie lesen, wenn Sie unter "Zeichensätze"> "Westeuropäisch"> "OEM-US" die Option "Codierung" auswählen.

Danach konnte ich "Encoding"> "Convert to UTF-8" auswählen, um sie in einem Format zu übertragen, das hoffentlich jeder andere lesen kann.

Zu Referenzzwecken ist mein System Windows 7 Professional SP1 64-Bit (x64), wobei mein aktuelles Systemgebietsschema auf "Englisch (USA)" eingestellt ist.

Ich glaube auch, dass diese Frage mehr Informationen enthält und wenn höher bewertet: Speichern von 'tree / f / a' Ergebnissen in einer Textdatei mit Unicode-Unterstützung

Ich führe auch die Eingabeaufforderung mit der Option "/ U" aus (über ConEmu, wenn es darauf ankommt), und eine Antwort auf dieser Seite hatte angegeben: Entweder funktioniert das nicht wie erwartet, oder der Tree-Befehl respektiert dies aus irgendeinem Grund nicht. Ich habe jetzt diesen Auszug aus der folgenden Quelle gefunden, der möglicherweise erklärt, warum der treeBefehl Unicode-kodierten Text nicht in eine Datei schreibt:

Ausgabe von UNICODE-Zeichen (UCS-2- Datei )
Diese Optionen wirken sich auf das Piping oder das Umleiten in eine Datei aus.
Die häufigsten Textdateien sind ANSI. Verwenden Sie diese Schalter,
wenn Sie den Zeichensatz konvertieren müssen.

In meiner Umgebung habe ich jedoch das Umleitungszeichen >für die Ausgabe zum Schreiben in eine Datei verwendet. Daher führt der Befehl dies nicht selbst aus, und die Ausgabe wurde immer noch nicht im Unicode-Format codiert.