![Wie füge ich den Befehl „Tree“ zu Git-Bash in Windows hinzu?](https://rvso.com/image/1346181/Wie%20f%C3%BCge%20ich%20den%20Befehl%20%E2%80%9ETree%E2%80%9C%20zu%20Git-Bash%20in%20Windows%20hinzu%3F.png)
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).
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.com
und Git Bash die Erweiterung nicht automatisch hinzufügt .com
und 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 //a
ASCII-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
. tree
ist 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 pacman
in 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 .
tree
Jetzt 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 pacman
das Paket bekomme, tree
indem 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, pacman
es 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.msys
und 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
- 64-Bit:http://repo.msys2.org/msys/x86_64/tree-1.7.0-1-x86_64.pkg.tar.xz
- oderhttps://sourceforge.net/projects/msys2/files/REPOS/MSYS2/x86_64/tree-1.7.0-1-x86_64.pkg.tar.xz
- 32 Bit:http://repo.msys2.org/msys/i686/tree-1.7.0-1-i686.pkg.tar.xz
- oderhttps://sourceforge.net/projects/msys2/files/REPOS/MSYS2/i686/tree-1.7.0-1-i686.pkg.tar.xz