Wie füge ich den Befehl „Tree“ zu Git-Bash in Windows hinzu?

Wie füge ich den Befehl „Tree“ zu Git-Bash in Windows hinzu?

Ich verwende git-bash in Windows 7. Ich möchte einen Baum des aktuellen Verzeichnisses sehen. Allerdings

jcollum@DEVELOPER01 ~/Dev/express_coffee            
$ tree .                                            
sh.exe": tree: command not found

OK, ich habe den Befehl also nicht tree. Wie installiere ich ihn? Ich habe einen Artikel gefunden, aber der war für macOS.

Antwort1

Sie können auch "cmd //c tree"die Windows-tree

Erläuterung:

  • Starten Sie cmd mit dem Argument „/c“, führen Sie den Baum aus und beenden Sie ihn anschließend

/C Führt den durch string angegebenen Befehl aus und beendet dann

(zusätzlicher Schrägstrich zum Escapen)

/a wird zur Ausführung mit ASCII-Zeichen verwendet, falls die Anzeige nicht richtig erfolgt.

Hier ausführlicher beantwortet:https://stackoverflow.com/q/515309/1261166

Antwort2

Ich habe die tree.exe in der Zip-Datei von hier heruntergeladenhttp://gnuwin32.sourceforge.net/packages/tree.htmwie vorgeschlagen.

Dann habe ich die Datei tree.exe extrahiert C:\Program Files\Git\usr\bin(ich habe diesen Ordner zum Windows-Pfad hinzugefügt, damit es mit der normalen CMD funktioniert, aber es funktioniert auch mit GITBash). Git Bash mit Tree-Befehl unter Windows

Ich hoffe, das hilft Ihnen irgendwie!

Antwort3

In Windows gibt es bereits einen Tree-Befehl. Das Problem besteht nur darin, dass dies der Fall ist tree.comund Git Bash die Erweiterung nicht automatisch hinzufügt .comund ausführt.

Es wird jedoch gefunden, wenn Sie tabnach der Eingabe drücken.Baumodertre

Um Dateien anzuzeigen, müssen Sie verwenden //f— Sie müssen verwenden //oder bash wird denken, es sei ein Ordnername

Früher habe ich auch //aASCII-Zeilen angezeigt, aber Sie müssen das nicht verwenden

Beispiel:

dean@dean:~/java$ tree
bash: tree: command not found

dean@dean:~/java$ tree.com //a
Folder PATH listing for volume c
Volume serial number is 4E70-B37A
C:.
+---atom
+---sublime
\---vscode

dean@dean:~/java$ tree.com //a //f
Folder PATH listing for volume c
Volume serial number is 4E70-B37A
C:.
+---atom
|       test1
|
+---sublime
|       test2
|
\---vscode
        test3

dean@dean:~/java$

Antwort4

Git für Windows (https://gitforwindows.org/) (hat Git Bash), aber es enthält nicht tree. treeist verfügbar für via pacman(Package Manager), aber das ist nur verfügbar, wenn Sie "Git für Windows" installierenSDK" (scrollen Sie zum Ende von gitforwindows.org/, wo Sie einen Link zum Herunterladen des Installationsprogramms finden.https://github.com/git-for-windows/build-extra/releases/latest)

Dieses SO: „Paketverwaltung in Git für Windows?“ war sehr hilfreich https://stackoverflow.com/questions/32712133/package-management-in-git-for-windows

Wie im obigen SO kommentiert, verlinken sie außerdem auf dieses Git-für-Windows-Problem [Pacman fehlt bei Neuinstallation von 2.5.2 Nr. 397], das nicht pacmanin der Standardinstallation enthalten sein sollte.

Wie auch immer, ich habe „Git for Windows SDK“ installiert und dann in der Bash-Eingabeaufforderung (SDK-64) Folgendes ausgeführt, um den aktuellen Tree v1.7.0-1 zu installieren (Stand dieser Veröffentlichung: 30. August 2018):

[SDK-64: Bash Terminal for Git for Windows SDK]
pacman -S tree
...
Proceed with installation? [Y/n] Y

Auf meinem System ist das Git für Windows SDK unter folgendem Pfad installiert: C:\git-sdk-64, also habe ich es aus meiner Git für Windows Bash-Shell (auf der tree nicht installiert war) über tree.exe in das Verzeichnis /usr/bin kopiert, z. B.

[MINGW64: Bash Terminal for Git for Windows]
cd /usr/bin
cp /c/git-sdk-64/usr/bin/tree.exe .

treeJetzt kann ich v1.7.0 von beiden Git-Bash-Shells aus ausführen .

Um es für andere und vielleicht auch für mich selbst auf einer zukünftigen Maschine noch einfacher zu machen, habe ich nachgeschaut, woher ich pacmandas Paket bekomme, treeindem ich Folgendes in meinem Git für Windows SDK Bash-Terminal ausgeführt habe:

$ pacman -S --info tree
Repository      : msys
Name            : tree
Version         : 1.7.0-1
Description     : A directory listing program displaying a depth indented list of files
Architecture    : x86_64
...

Der Schlüssel dabei ist, pacmanes aus dem „msys“-Repository zu beziehen (zu Ihrer Information: obwohl dort „msys“ steht, wird tatsächlich „msys2“ verwendet). Ich habe mir also angesehen /etc/pacman.d/mirrorlist.msysund der erste Spiegel verweist aufhttp://repo.msys2.org/msys/$arch/

Wenn Sie also das nächste Mal ein Paket möchten, das NICHT in Git für Windows enthalten ist, können Sie es hier herunterladen:http://repo.msys2.org/msys/x86_64/(für 64-Bit) oder vonhttp://repo.msys2.org/msys/i686/(32 Bit)

zB direkter Download-Link für Tree v1.7.0-1

verwandte Informationen