它是ls + du + tree ,带有交互式TUI!创建gls是为了轻松查看,过滤和搜索您的文件,文件夹和目录,每当您需要打开一些存储空间时。说gls是一种最小而功能强大的文件经理CLI工具是没有错的。
只需运行:
go install go.sazak.io/gls/cmd/gls@latest使用源代码在计算机上安装gls非常简单:只需克隆回购并安装cmd/gls/main.go :
$ git clone https://github.com/ozansz/gls
$ cd gls
$ go install ./cmd/gls/main.go运行go install命令后,在$GOPATH/bin中创建了可执行文件名gls 。现在,您可以简单地在终端运行gls :
$ gls如果您在Linux上使用基于Debian的发行版,则可以下载看起来像gls_<VERSION_NUMBER>_amd64.deb软件包中。然后,您可以安装它
sudo dpkg -i gls_<VERSION_NUMBER>_amd64.deb在您下载包装的目录中。您可以在“来自源代码”部分中显示的PowerShell中应用类似的过程:
> git clone https: // github.com / ozansz / gls
> cd .gls
> go install - v .cmdglsmain.go现在,您可以在所有目录中使用gls 。
gls有两种运行模式:TUI和基于文本的模式。
TUI模式是交互式的,您将能够使用gls的所有功能,例如通过文本/正则表达式进行搜索,在文件树上遍历,创建/打开/删除文件以及许多其他内容,直到关闭程序为止。
但是,文本模式非常简单,并且是跑步tree和du的字面组合,并具有一些其他功能。
下面的命令使用TUI运行gls ,这是默认模式。它在指定路径下方解析文件树,以及磁盘上的文件和文件夹大小,然后显示解析树的树视图。
gls -path ~ /Downloads
下面的命令执行与上面命令相同的解析过程。除此之外,这只是将解析的树倒入终端的文件/ tree夹大小和权限时,将解析的树丢弃。
gls -nogui -path ~ /Documentsgls包括(并且仍在继续包含更多)几个模仿普通文件经理的功能:
.gitignore样式.glsignore ,但是可以通过CLI参数指定无限的许多其他忽略文件touch )和打开文件以编辑| 捷径 | 命令 | 描述 |
|---|---|---|
q , ESC , ˆC | 辞职 | 退出程序 |
c | 坍塌 | 折叠文件树视图中的所有节点 |
e | 扩张 | 扩展文件树视图中的所有节点 |
s | 搜索 | 通过名称打开模式以搜索节点(文件和文件夹) |
r | 正则搜索 | 与搜索相同,但您可以使用正则表达式搜索 |
x | 恢复 | 加载原始文件树视图,主要在search和regex search后使用 |
o | 打开 | 使用默认程序打开所选(悬停)文件/文件夹 |
p | 打开 | 打开模式以指定将用于打开所选(悬停)文件/文件夹的可执行路径 |
BACKSPACE , DEL | 消除 | 删除所选(悬停)文件。目前不支持删除文件夹 |
m | 标记 | 标记/未标记所选(悬停)文件或文件夹。标记节点以后可用于duplicate和move |
u | 未标记 | 未标记所有标记的文件和文件夹 |
n | 新的 | 创建一个新文件 |
d | 复制 | 将标记的文件和文件夹复制到指定的目标。目的地由打开表单的文本输入指定。 |
v | 在VIM中打开文件 | 在VIM编辑器中打开文件。 |
TAB , SPACE , ENTER | 切换扩展节点 | 如果当前崩溃,则扩展节点,反之亦然,所选的(悬停)文件或文件夹 |
ARROW KEYS , SCROLL | 导航 | 在文件树视图中的节点之间导航 |
您可以自由更改密钥绑定和快捷方式,也可以从gui/core.go中为您的需求配置程序。
更改后,运行
go build cmd/gls/main.go在项目目录中。
此外,如果您认为您的配置或其他更改似乎需要改善项目,您的贡献将受到欢迎:)
您可以使用.glsrc文件自定义调色板。您唯一需要做的就是在$HOME目录中创建一个.glsrc文件,并将颜色设置为键值对。一个示例如下:
GridTitleColor=blue
TreeViewTitleColor=yellow
FileInfoTitleColor=lightgreen
DirectoryColor=red
BorderColor=white
FileInfoAttrColor=orange
FileInfoValueColor=pink
SearchFormTitleColor=brown
UnmarkedFileColor=deeppink
MarkedFileColor=gray
FileInfoTabAttrWidth=30
运行程序时,Palette值将被.glsrc文件中的值覆盖。该文件必须存储在$HOME目录中,文件名必须为.glsrc 。否则,程序使用默认的调色板值。
-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.您还可以通过使用无参数的
gls读取终端中的此部分。
欢迎您为gls做出贡献!这里有几个步骤来指导您如何开始贡献:
检查“打开问题”选项卡,以查看是否有任何问题您可能有兴趣修复。您还可以仅列出问题的问题
检查贡献指南,以获取有关设置开发环境,打开PR等的更多解释。