Es ist ls + du + tree mit interaktivem TUI auf Ihrem Terminal! gls wird erstellt, um Ihre Dateien, Ordner und Verzeichnisse einfach mit ihrer Größe anzusehen, zu filtern und zu durchsuchen, wenn Sie einen Speicherplatz öffnen müssen. Es wäre nicht falsch zu sagen, dass gls ein minimales, aber leistungsstarkes CLI -Tool ist.
Einfach rennen:
go install go.sazak.io/gls/cmd/gls@latest Das Installieren von gls auf Ihrem Computer mit dem Quellcode ist ziemlich einfach: Klonen Sie einfach das Repo und installieren Sie cmd/gls/main.go :
$ git clone https://github.com/ozansz/gls
$ cd gls
$ go install ./cmd/gls/main.go Nachdem Sie den Befehl go install , wird ein ausführbarer Dateiname gls in $GOPATH/bin erstellt. Jetzt können Sie einfach gls im Terminal ausführen:
$ gls Wenn Sie eine Debian-basierte Distribution unter Linux verwenden, können Sie das Paket herunterladen, das wie gls_<VERSION_NUMBER>_amd64.deb von der Releases-Seite zu sein scheint. Dann können Sie es installieren
sudo dpkg -i gls_<VERSION_NUMBER>_amd64.deb im Verzeichnis, in dem Sie das Paket heruntergeladen haben, ein.Sie können die ähnliche Prozedur in PowerShell anwenden, die im Abschnitt mit dem Quellcode angezeigt werden:
> git clone https: // github.com / ozansz / gls
> cd .gls
> go install - v .cmdglsmain.go Jetzt können Sie gls in allen Verzeichnissen verwenden.
Es gibt zwei laufende Modi von gls : TUI und textbasiert.
Der TUI -Modus ist interaktiv und Sie können alle Funktionen von gls verwenden, z. B. nach Text/regulärem Ausdruck, das Überqueren des Dateibaums, das Erstellen/Öffnen/Löschen von Dateien und viele andere Dinge, bis Sie das Programm schließen.
Der Textmodus ist jedoch ziemlich einfach und eine wörtliche Kombination aus tree und du mit einigen zusätzlichen Funktionen.
In dem folgenden Befehl wird gls mit TUI ausgeführt, dem Standardmodus. Es analysiert die Dateibaum unter dem angegebenen Pfad zusammen mit der Datei- und Ordnergrößen auf der Festplatte und zeigt dann die Baumansicht des Parsen -Baumes an.
gls -path ~ /Downloads
Der folgende Befehl führt den gleichen Parsingprozess wie der obige Befehl aus. Außer, dass dieser nur den analysierten Baum als den Befehl tree mit den Größen und Berechtigungen der Datei/Ordner in das Terminal ausgelöst hat.
gls -nogui -path ~ /Documents gls beinhaltet (und weiterhin mehr) mehrere Funktionen, die einen normalen Dateimanager nachahmen:
.gitignore -Stil.glsignore , aber unendlich viele andere Ignorierungsdateien können über die CLI -Argumente angegeben werdentouch ) und öffnen Sie Dateien zum Bearbeiten| Abkürzung | Befehl | Beschreibung |
|---|---|---|
q , ESC , ˆC | aufhören | Verlässt das Programm |
c | Zusammenbruch | In der Dateibaumansicht kollabiert alle Knoten |
e | expandieren | Erweitert alle Knoten in der Dateibaumansicht |
s | suchen | Öffnet Modal, um Knoten (Dateien und Ordner) nach Namen zu durchsuchen |
r | Regex -Suche | Gleich wie die Suche, aber Sie können mit regulären Ausdrücken suchen |
x | wiederherstellen | Laden Sie die Original -Dateibaumansicht, die hauptsächlich nach search und regex search verwendet wird |
o | offen | Öffnet die ausgewählte Datei/den ausgewählten (auf HOVER) -Fordner mit dem Standardprogramm |
p | offen | Öffnet Modal, um den ausführbaren Pfad anzugeben, mit dem die ausgewählte Datei/den Ordner ausgewählt (auf der Schwebeplätze) geöffnet werden kann |
BACKSPACE , DEL | entfernen | Entfernt die ausgewählte (auf hover) Datei. Die Entfernung des Ordners wird derzeit nicht unterstützt |
m | markieren | Markierungen/Entlassung Die ausgewählte (auf Hover) -Datei oder die ausgewählte Ordner. Markierte Knoten können später für duplicate und move verwendet werden |
u | Unmark | Entkämmt alle markierten Dateien und Ordner |
n | neu | Erstellen Sie eine neue Datei |
d | Duplikat | Kopieren Sie die markierten Dateien und Ordner in ein bestimmtes Ziel. Das Ziel wird durch die Texteingabe des geöffneten Formulars angegeben. |
v | Datei in vim öffnen | Öffnet die Datei im VIM -Editor. |
TAB , SPACE , ENTER | Kipper erweitern den Knoten | Erweitert den Knoten, wenn derzeit zusammengebrochen |
ARROW KEYS , SCROLL | navigieren | Navigiert zwischen Knoten in der Dateibaumansicht zwischen Knoten |
Sie können die wichtigsten Bindungen und Verknüpfungen frei ändern oder das Programm für Ihre Anforderungen von gui/core.go konfigurieren.
Nach Ihren Änderungen laufen
go build cmd/gls/main.goim Projektverzeichnis.
Wenn Sie der Meinung sind, dass Ihre Konfigurationen oder andere Änderungen für die Verbesserung des Projekts notwendig erscheinen, werden Ihre Beiträge begrüßt :) :)
Sie können die Farbpalette mit .glsrc -Datei anpassen. Das einzige, was Sie tun müssen, ist eine .glsrc Datei in $HOME -Verzeichnis zu erstellen und die Farben als Schlüsselwertpaare festzulegen. Ein Beispiel ist unten:
GridTitleColor=blue
TreeViewTitleColor=yellow
FileInfoTitleColor=lightgreen
DirectoryColor=red
BorderColor=white
FileInfoAttrColor=orange
FileInfoValueColor=pink
SearchFormTitleColor=brown
UnmarkedFileColor=deeppink
MarkedFileColor=gray
FileInfoTabAttrWidth=30
Wenn Sie das Programm ausführen, werden die Farbpalettenwerte mit Werten in .glsrc -Datei überschrieben. Die Datei muss in $HOME -Verzeichnis gespeichert werden und der Dateiname muss .glsrc sein. Andernfalls verwendet das Programm die Standard -Farbpalettenwerte.
-debug
Increase log verbosity
-fmt string
size formatter, one of bytes, pow10 or none (default " bytes " )
-ignore string
Comma-separated ignore files that specify which files folders to exclude
-nogui
text-only mode
-path string
path to run on (required)
-sort
sort nodes by size (default true)
-thresh string
size filter threshold, e.g. 10M, 100K, etc.Sie können diesen Abschnitt auch vom Terminal durch Verwendung
glsohne Parameter lesen.
Sie sind herzlich eingeladen, zu gls beizutragen! Hier sind ein paar Schritte, um Ihnen den Beitrag zu leiten:
Überprüfen Sie die Registerkarte "Open Issues", um festzustellen, ob es Probleme gibt, die Sie möglicherweise an der Behebung von Problemen interessiert sind. Sie können die Probleme auch nur mit dem Tag gut zum ersten Mal auflisten
Weitere Erläuterungen zum Einrichten der Entwicklungsumgebung, des Öffnens der PR usw.