如何为LS命令输出启用颜色

时间:2020-03-05 15:29:26  来源:igfitidea点击:

在本文中,我将写入Bash Shell中LS命令输出的颜色。
在Linux中,LS是我们日常管理任务中的基本和最重复使用的命令之一,以列出目录的内容。

如果我们注意到LS命令显示目录和文件的不同颜色,那就是我们将在本文中讨论的,以便为LS命令设置和更改所需的颜色。

默认ls颜色

如果我们使用的是ubuntu或者centos等任何Linux操作系统,则默认的GUI终端和控制台shell提示符以各种上下文颜色显示文件。
但是,如果默认使用ls --color默认情况下,如果不支持彩色目录列表的计算机,则可能必须将颜色添加到LS命令。

运行以下命令以显示系统上任何目录和文件的默认颜色。

$ls
$ls -al /tmp
$ls -al --color /tmp

我们还可以使用以下命令来检查颜色的分配方式。

$dircolors
$echo $LS_COLOR

其中我们可以看到默认着色方案的一长串文件类型和编号代码,我们将解释我们可以自己创建的。

打开/关闭颜色为ls命令

LS命令输出的颜色在Bash中定义为别名。
运行以下别名和grep命令的组合,以查找用于彩色显示的Bash shell aliases。

$alias | grep ls

现在运行下面的命令以删除unalias命令的别名。

$unalias ls

或者只是运行以下LS来关闭颜色。

$ls --color=none

我们可以在屏幕截图中看到,删除别名后LS命令的输出是UNI颜色。

现在,要启用颜色,请使用以下命令分配别名。

$alias ls='ls --color=auto'

我们可以在屏幕截图中看到,删除别名后LS命令的输出是UNI颜色。

现在,要启用颜色,请使用以下命令分配别名。

$alias ls='ls --color=auto'

默认颜色代码方案

在组装文件类型和颜色列表的过程中,我们需要根据FileType =颜色中的诸如颜色指定多个,每个都使用冒号(:)字符。

以下是具有默认设置的着色方案列表。

●未调用(白色):文件或者非文件名文本(例如LS -L的输出中的权限)●粗体蓝色:目录●粗体Cyan:符号链接●粗体绿色:可执行文件●粗体:归档文件●粗体填充:图像文件,视频,图形等或者门或者插座●青色:音频文件●带黑色背景:管道(AKA FIFO)●粗体与黑色背景:块设备或者字符设备●粗体与黑色背景:孤儿符号链接或者缺少文件●无色与红色背景:set-user-id文件●黑色带背景:set-group-id文件●黑色带背景:带有能力的文件●白色与蓝色背景:粘性目录●蓝色绿色背景:其他可写目录●黑色与绿色背景:粘性和其他可写的目录

要组装我们自己的列表,我们需要了解使用相同数字颜色代码的颜色代码和文件类型代码列表,如Bash提示符。

我们可以在前台文本的颜色代码列表下面找到:

●黑色:30●:31●绿色:32●:33●蓝色:34●紫色:35●青色:36●白色:37

更改自定义LS颜色

为了设置"LS命令"的定制颜色,也可以通过使用像"Vim"等文本编辑器"的任何文本编辑器更新到"~/.bash_profile"或者~/.bashrc文件。

在对Bashrc进行任何更改之前,首先通过将其配置复制到任何其他文件来备份此文件。

$cp .bashrc .bashrc2

如果我们犯了错误或者遇到麻烦,可以通过键入来替换.bashrc文件:

$cp .bashrc2 .bashrc

现在让我们使用Vim命令打开Bashrc文件。

$vim .bashrc

.bashrc.

## Colorize the ls output ##
alias ls='ls --color=auto'
## Use a long listing format ##
alias ll='ls -la'
## Show hidden files ##
alias l.='ls -d .* --color=auto'

一旦对BASCHRC文件进行了任何更改,下一步保存并运行以下命令以更新BASH更改。

$source .bashrc

例如,让我们看看这是如何在以下步骤中的工作原理。
如果要从默认粗体蓝色更改目录的颜色,请按照显示的终端运行以下命令。

$LS_COLORS=”di=1;33”

我们可以在LS_Colors环境变量的末尾添加新的键值对或者简单地编辑特定密钥的值。

例如,DI = 0; 33,这里的颜色只会影响目录,而0表示它是正常颜色,33表示颜色是。

如果要为目录保留粗体字体,则颜色代码应为di = 1; 33,而1表示粗体字体。

更多例子

让我们使用以下命令播放来更改文件夹的颜色和一些特定文件扩展。

$export LS_COLORS=$LS_COLORS:"*.txt=01;36":"*.mp3=01;31"

其中我们可以看到我们已将.txt文件的颜色更新为青色和使用.mp3扩展的文件。

让我们在下面运行另一个命令,将目录的颜色设置为紫色。

$export LS_COLORS="di=0;35"

一旦我们熟悉设置自定义颜色,我们可以通过将其添加到位于用户主目录中的Dot Bashrc文件中来使这些更改永久。