在我的 MacBook Pro 上,我安装了 iTerm,并使用了(黑色背景)柔和色设置。全球可写目录显示为灰色文本后面的黄色背景。我可以接受这种情况,因为灰色足够深,在柔和的黄色包围下仍然可见。
但是,当我连接到我公司的 Slackware 服务器(通过 ssh 和 tcsh 作为远程端的 shell)时,777 个目录显示为浅绿色实心块,因为背景和文本颜色相同(或足够接近以至于文本无法阅读)。
如何更改全球可读(777)目录的背景颜色?
谢谢!
-布莱恩
答案1
我认为这是来自 ls 的输出,而不是 shell 的制表符补全?(我知道至少有一个 shell 可以为 shell 制表符补全着色,但您没有说,所以我假设是 ls)。
使用$LS_COLORS
,通常通过 dircolors(1) 命令初始化。dircolors -p
要查看默认值,请获取两个系统的输出并进行比较。
将所需的配置放入~/.dircolors
然后:
set d=$HOME/.dircolors
if ( -r $d ) eval `dircolors -c $d`
[根据 coreutils 包中有关 dircolors 调用的信息文档修改]
答案2
简单的方法
只需放
LS_COLORS="$LS_COLORS:ow=103;30;01"
在 .bashrc 末尾并重新加载(源 ~/.bashrc)或注销并登录。
答案3
我建议将 sticky-world-write 和普通 sticky(它的唯一用途就是 world-write,对吧?至少通常如此)更改为相同的值,即 ...37;44,即蓝色背景上的白色。这比典型的黄底黑字要少得多,后者总是会引起你的注意,而且没有任何可疑的情况。
现在烦恼少多了(我过去和现在都倾向于从我能找到的所有东西中删除 ow,这样它就不会以那种方式出现在 ls 中 ;-)。至少现在如果应该为了使它具有全世界的可写性,我也可以给它粘性,然后它就没问题了。
dircolors -c .dircolors
结果setenv LS_COLORS '...'
是适用于 c-shell 的 a。对于 bourne-shell (bash),您必须使用dircolors -b
。