linux - 您如何确定 bash ls 颜色的含义?

当您在 bash shell 中执行 ls 时,有时会有颜色表示不同的资源类型,您可以使用 --color 参数启用/控制它。

但是手册页和谷歌都没有提供这个问题的答案:

这些颜色默认表示什么,如何显示当前系统使用的内容?


更新:

到目前为止,感谢大家的回答,但是为了更容易挑选获胜者,任何人都可以更进一步,并提供一种方法来输出他们适用的颜色的描述。

嗯...我的示例在发布时不起作用(仅在预览时),因此如果您预览此代码,它将显示我的意思...

<ul style="list-style:none; background:black; margin:0;padding:0.5em; width:10em">
  <li style="color:blue">directory</li>
  <li style="color:aqua">symbolic link</li>
  <li style="color:#A00000;">*.tar files</li>
  <li style="color:white">...</li>
</ul>

谢谢。

最佳答案

颜色由 $LS_COLORS 环境变量定义。根据您的发行版,它会在 shell 启动时自动生成,使用 ~/.dircolors/etc/DIR_COLORS

编辑:

要列出颜色含义,请使用以下脚本:

eval $(echo "no:global default;fi:normal file;di:directory;ln:symbolic link;pi:named pipe;so:socket;do:door;bd:block device;cd:character device;or:orphan symlink;mi:missing file;su:set uid;sg:set gid;tw:sticky other writable;ow:other writable;st:sticky;ex:executable;"|sed -e 's/:/="/g; s/\;/"\n/g')
{
  IFS=:
  for i in $LS_COLORS
  do
    echo -e "\e[${i#*=}m$( x=${i%=*}; [ "${!x}" ] && echo "${!x}" || echo "$x" )\e[m"
  done
}

https://stackoverflow.com/questions/598107/

相关文章:

c - 如何知道linux调度器时间片?

linux - 如何在 Linux 上记录内存消耗?

linux - 双斜杠//in `cd//` 在 Linux 中是什么意思?

linux - 如何通过命令提示符检查 Linux 中的 BIOS 版本或名称?

c - 枚举中这些#define 的目的是什么?

linux - 使用 shell 脚本将行附加到/etc/hosts 文件

linux - 通过 linux x86-64 函数调用保留了哪些寄存器

linux - 我可以阅读 Linux 内核的哪些部分以获得乐趣?

c - Linux 中的 bluetooth/bluetooth.h 位于何处?

linux - 从 FTP 服务器下载所有文件