如何在 Linux 中格式化树的输出以使配色方案仍然适用?

问题描述 投票:0回答:3

如何格式化树命令的输出,以便 ls 的格式,例如目录和某些文件类型的突出显示和配色方案适用于输出吗? 问题是当我将树的深度限制为 2 时,如果最终级别中有任何目录,则目录和文件之间没有明显的差异。因此,以某种方式轻松区分两者,同时显示文件和目录会很棒。任何帮助,将不胜感激。

linux tree
3个回答
25
投票
tree -C

-C

如果未设置

LS_COLORS
环境变量,则始终打开着色,使用内置颜色默认值。对于对管道的输出进行着色很有用。

参见man页面。


3
投票

我通常使用 2 级树,所以这是我最喜欢的别名:

tre='tree -CL 2'

enter image description here


0
投票

我刚刚遇到了同样的问题。评论中的答案帮助了我。

TL;博士

export CLICOLOR=1

tree
-C
标志的描述如下:

始终开启着色。

但事实并非如此。它只适用于

tree
的特定调用,仅此而已。但是设置该环境变量对我来说是这样。它为当前终端会话设置环境变量。

如果您希望此环境变量在当前用户的多个终端会话中持续存在,则应编辑当前用户的

~/.bashrc
~/.bash_profile
shell 脚本。打开文件并将代码附加到文件末尾。

另一方面,如果您希望此环境变量在所有用户的多个终端会话中持续存在,则应编辑

/etc/environment
文件。打开文件并将
CLICOLOR=1
附加到文件末尾。 [1][2]


[1] 建议的解决方案假设用户使用 Linux 发行版和 Bourne-Again Shell (bash)。其他平台有自己的方法为个人用户和系统范围设置持久环境变量。请参阅 Windows 和 MacOS:

Windows Environment Variables MacOS Environment Variables

[2] 请记住,这些更改需要某种重新加载。

© www.soinside.com 2019 - 2024. All rights reserved.