带图标的树命令

带图标的树命令

我们都喜欢这个tree命令,但如果文件旁边有图标,那就太棒了,就像 VSC 或 VSC 的文件浏览器那样Color Ls
有谁知道有什么方法可以实现它吗?

树 vs ls vs vsc

答案1

lsd --tree这已经存在,例如以“增强替代方案”的形式ls。由于技术原因,它的图标范围有限:

基本上,控制台上的图标要么需要专门修改的终端模拟器(kitty我讨厌它的微妙错误),要么需要将所需图标映射到某个代码点的字体。

如果您获得的图标满足您的需求,那么lsd --tree就是正确的选择。实施同样的方法并不难;使用您最喜欢的脚本语言递归地列出您的目录,打印包括图标的文件名(从名称或file/ magic 推断),并根据树的情况缩进。

答案2

更新: exa就是现在无人维护的。使用维护的替代品eza反而。

你可能想尝试exa

我有这个别名来获取带有图标的树:

alias lt='exa -aT --color=always --group-directories-first --icons' # tree listing

笔记:“–git-ignore”命令行参数告诉 exa 跳过与当前“.gitignore”文件中的模式匹配的所有文件。

笔记:您需要“Nerd”字体来获取图标符号。这是我在 Arch 中安装的:

sudo pacman -S ttf-arimo-nerd

这篇博文中的更多示例:https://www.lorenzobettini.it/2023/02/exa-and-icon-fonts-in-arch-linux/

相关内容