消除WSL中ls Windows文件夹时背光配色的方法

消除WSL中ls Windows文件夹时背光配色的方法

产生原因

首先,Linux中ls命令是自带配色的,对于某些文件夹是绿色背景色块,其实是一种权限提示,即777权限。绿色表示不安全,当其他人的权限高于所有者或者所属组时就会变成绿色,或者当文件权限大于系统默认给的最大权限时就会变成绿色,文件初始权限是644,如果变成777就会变绿;文件夹初始权限是755,变成777也会变绿;而且颜色和系统有关,修改配色方案或者修改ls显示的颜色都可以把绿色的报警隐藏掉。
举个例子:
ls的配色示例
这种配色提醒会导致一个问题:linux目录修改为777后,在secureCRT或者mobaxterm中就看不清楚了,背光晃眼,逼死强迫症。
当然,WSL中挂接的Windows下的文件全部默认是777权限的,所以,可想而知,ls时所有的文件夹都是带有背光的。

解决方法

不显示配色

自定义ls命令为 ls --color=none
不过这样也会让我们精心设计的配色方案全都失去意义,所以应该不是个治本方法。
在这里插入图片描述

对于777的文件夹不显示背景色

在终端中输入:dircolors >> ~/.bashrc
Linux系统中是使用LS_COLORS环境变量负责运行ls命令时看到的颜色。这个dircolors 命令会把LS_COLORS的值重定向到.bashrc 文件之中
dircolors
LS_COLORS键值对以冒号(:)分隔。这些键大部分是预定义的。仅颜色值会更改。
该值具有2个或多个用分号(;)分隔的部分。
例如,di = 0 ; 34,这里di意味着颜色应该应用于目录。0表示它是正常大小,而34表示颜色是绿色。
如果要为目录使用绿色粗体 ,则颜色代码应为di = 1 ; 34。此处1表示粗体。
如果您还想指定背景色,则也可以为其附加代码。例如,如果要在红色背景上使用黄色普通字体,则代码应为di = 1 ; 33 ; 41
可以看到,这里的ow=34;42
这里的34 =蓝色, 42 =绿色背景
我们想要把绿色背景删掉,就把ow改成ow=34,删掉分号和42的背景颜色,然后重新载入bash设置,就可以去掉ls的背光了。
去掉背光之后

附加材料

有的人可能想要改一下ls的字体或者颜色,可以参考下面的设置:
31 =红色 40 =黑色背景 0 =默认颜色
32 =绿色 41 =红色背景 1 =粗体
33 =橙色 42 =绿色背景 4 =下划线
34 =蓝色 43 =橙色背景 5 =闪烁文字
35 =紫色 44 =蓝色背景 7 =反向字段(交换前景色和背景色)
36 =青色 45 =紫色背景 8 =隐藏(不可见)
37 =灰色 46 =青色背景 0 =默认颜色
90 =深灰色 47 =灰色背景 1 =粗体

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值