有什么办法可以在linux中只改变一个特定的目录颜色吗?

时间:2017-04-01 13:17:34

标签: linux bash

我只需要设置一个只会影响特定目录而不是全局的颜色。

1 个答案:

答案 0 :(得分:1)

如果您在支持颜色的终端中使用Bash,并且想要在此目录中更改文本输出到终端的默认颜色(不是ls的输出),那么您可以做一件事。

PROMPT_COMMAND变量可以设置为在打印提示之前执行命令。您可以使用它来检查当前目录并更改终端颜色(例如,通过为PS1变量分配一个提示,其中包含用于选择颜色或回显所述特殊代码的不可显示的特殊代码)。

Bash手册中记录了

PROMPT_COMMANDhttps://www.gnu.org/software/bash/manual/bashref.html

至于如何分配颜色,如果感兴趣,你应该查看它。

这个解决方案可能不是你想要的,可能会产生副作用,一般来说我不确定它会根据当前目录改变终端颜色。通常的解决方案是有一个提示,显示当前目录的路径(或至少是路径的最后一部分)。

我使用类似于上面的内容来改变文本颜色,具体取决于我正在执行Bash的机器,因为我在一台机器上使用ssh通过多个终端窗口进行了很多操作,并且颜色(在黑色上) background)是记住任何给定窗口所连接的机器的好方法。