linux - 有什么办法可以只更改 linux 中的特定目录颜色?

标签 linux bash

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

最佳答案

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

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

PROMPT_COMMAND 记录在 Bash 手册中:https://www.gnu.org/software/bash/manual/bashref.html

至于如何分配颜色,有兴趣的可以去看看。

此解决方案可能不是您要找的,可能会有副作用,一般来说,我不确定根据当前目录更改终端颜色是否有用。通常的解决方案是让一个提示符显示当前目录路径(或至少是路径的最后一部分)。

我使用与上面类似的东西根据我在哪台机器上执行 Bash 来更改文本颜色,因为我在多个终端窗口上从一台机器到另一台机器使用 ssh 很多,并且颜色 (在黑色背景上)是记住任何给定窗口连接到哪台机器的好方法。

关于linux - 有什么办法可以只更改 linux 中的特定目录颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43157373/

相关文章:

linux - xargs 不适用于 replstr(替换字符串)

linux - 如何检查 Bash 中的文件是否为空?

bash - 为什么 "local"会丢弃命令的返回码?

c - 在 PetaLinux 上为 Zynq FPGA 上的 Rocket Chip 部署 C 可执行文件

linux - bash 数组在命令提示符下工作但在作为 ksh 执行时不工作

c - OpenWrt 的 Eclipse GCC C 交叉编译不工作

linux - CustomScript 扩展 - 无法在 Azure CentOS VM 上运行 bash 脚本

用于具有图像列表刷新功能的幻灯片放映的 Bash 脚本

linux - 优化 sed 命令以获得更好的性能

java - 确定 Linux 平台上远程机器上运行的 JVM 列表