在Red Hat Enterprise Linux 5.x的终端中,运行:
[$] Env
返回(除其他外):
"LS_COLORS=no=00:fi=00:di=01;34:ln=01;36:pi=40;33 . . ."
我在文件中找到LS_COLORS
中的大部分内容:
/etc/DIR_COLORS
但是值“no=00:fi=00:di=01;34:ln=01;36:pi=40;33
等”,即使在点击系统之后,我也没有成功找到。
这些值定义在哪个文件中?
是的,我知道我可以将LS_COLORS
的内容设置为我想要的值,
但我想知道的是其中上面的值已定义。
答案 0 :(得分:7)
我认为您所寻找的内容可以在/etc/profile.d/colorls.sh
找到:
# color-ls initialization
alias ll='ls -l' 2>/dev/null
alias l.='ls -d .*' 2>/dev/null
COLORS=/etc/DIR_COLORS
[ -e "/etc/DIR_COLORS.$TERM" ] && COLORS="/etc/DIR_COLORS.$TERM"
[ -e "$HOME/.dircolors" ] && COLORS="$HOME/.dircolors"
[ -e "$HOME/.dir_colors" ] && COLORS="$HOME/.dir_colors"
[ -e "$HOME/.dircolors.$TERM" ] && COLORS="$HOME/.dircolors.$TERM"
[ -e "$HOME/.dir_colors.$TERM" ] && COLORS="$HOME/.dir_colors.$TERM"
[ -e "$COLORS" ] || return
eval `dircolors --sh "$COLORS" 2>/dev/null`
[ -z "$LS_COLORS" ] && return
if ! egrep -qi "^COLOR.*none" $COLORS >/dev/null 2>/dev/null ; then
alias ll='ls -l --color=tty' 2>/dev/null
alias l.='ls -d .* --color=tty' 2>/dev/null
alias ls='ls --color=tty' 2>/dev/null
fi
LS_COLORS
变量是通过对dircolors --sh "$COLORS" 2>/dev/null
输出的评估来设置的,/etc/DIR_COLORS
的输出又从LS_COLORS
接收其值。换句话说,默认情况下,DIR_COLORS
中的值与dircolors --sh "$COLORS"
相同。
您可以通过比较$ dircolors --sh "$COLORS"
LS_COLORS='no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=01;32:*.cmd=01;32:*.exe=01;32:*.com=01;32:*.btm=01;32:*.bat=01;32:*.sh=01;32:*.csh=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tz=01;31:*.rpm=01;31:*.cpio=01;31:*.jpg=01;35:*.gif=01;35:*.bmp=01;35:*.xbm=01;35:*.xpm=01;35:*.png=01;35:*.tif=01;35:';
export LS_COLORS
:
echo $LS_COLORS
$ echo $LS_COLORS
no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=01;32:*.cmd=01;32:*.exe=01;32:*.com=01;32:*.btm=01;32:*.bat=01;32:*.sh=01;32:*.csh=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tz=01;31:*.rpm=01;31:*.cpio=01;31:*.jpg=01;35:*.gif=01;35:*.bmp=01;35:*.xbm=01;35:*.xpm=01;35:*.png=01;35:*.tif=01;35:
:
{{1}}
你有它。
答案 1 :(得分:3)
/etc/DIR_COLORS
上述内容与以下内容不同。
/etc/DIR_COLORS.xterm.
使用SSH终端文件记录时
/etc/DIR_COLORS.xterm
被使用。
答案 2 :(得分:0)
如果指定了FILE,请将其读取 确定要使用的颜色 哪种文件类型和 extensions.Otherwise,预编译 使用数据库。有关的详细信息 这些文件的格式,运行`dircolors --print-数据库”。
所以看起来那些代码是在系统中编译的