centos ls 和 ubuntu ls 命令有什么区别?

centos ls 和 ubuntu ls 命令有什么区别?

我的 PC 中有一个 centos 和一个 ubuntu 虚拟机,每当我ls在 centos 虚拟机中运行命令时,它都会打印出浅字体的文本。但在 ubuntu 中,相同的命令会以更粗的字体打印出文本。为什么?

答案1

正如其他人所指出的,着色是由--color标志控制的。许多 Linux 发行版为lsin或另一个 shell 启动文件设置了别名~/.bashrc,并且别名包含此标志。

颜色本身由环境变量控制$LS_COLORS。这通常也可以在您的 shell 启动脚本之一中通过调用读取配置文件的命令来设置,该文件dircolors告诉它如何构造$LS_COLORS.在 CentOS 和其他 RHEL 衍生版本上,默认配置文件是/etc/DIR_COLORS.只是 CentOS 和 Ubuntu 选择了不同的ls输出配色方案。

答案2

ls命令对于几乎所有 Linux 发行版都是通用的,并且行为类似。但是,shell 配置文件中的命令可能有别名。在 Ubuntu 20.04 中,默认的 bash 配置文件位于用户的主目录中,名为 .bashrc。它包含以下行:

alias ls='ls --color=auto'

因此,当您输入时ls,您实际上正在执行ls --color=auto。 CentOS 中可能有不同的别名或根本没有别名,或者您的 Ubuntu 安装中可能有与上述别名不同的别名。这可能是不同行为的原因

相关内容