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

本文介绍了Linux中ls命令显示777权限文件夹时的绿色背景问题,及其在secureCRT或mobaxterm中导致的阅读困难。解决方法包括通过修改.bashrc文件,将LS_COLORS环境变量中的绿色背景颜色代码删除,从而去除背光配色。此外,还提供了如何自定义ls命令颜色和字体的参考设置。
摘要由CSDN通过智能技术生成

消除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 =粗体

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值