linux 文本显示颜色配置

本文介绍如何在Linux服务器上通过SSH连接时调整文件及文件夹的颜色显示,以改善用户体验。主要内容包括修改vim配置文件来调整文件高亮颜色,以及设置ls命令的颜色输出。

安装好linux服务器,首次进行SSH连接时,发现系统默认的显示的文件夹以及文件名颜色看着很不舒服,通过以下方式进行调整:

vi /etc/vimrc
未尾加入:
 
set expandtab
set tabstop=4
set softtabstop=4
set shiftwidth=4
set number
set encoding=utf-8
set showmatch
set nobackup
 
hi Comment ctermfg=6
hi SpecialKey ctermfg=6
hi Directory ctermfg=6
 
 
vi /etc/vimrc
未尾加入
alias vi=vim
export LS_COLORS="$LS_COLORS:di=00;36:"
### 方法概述 在 Linux 终端中,文本颜色通常是通过 ANSI 转义序列实现的。这些转义序列以 `\033[` 开头,后面跟着一系列表示颜色和其他属性的代码[^1]。为了去除终端中的颜色代码,可以采用以下几种方法: --- #### 使用 `sed` 命令过滤掉颜色代码 `s sed` 是一种强大的流编辑器,能够匹配并替换特定的字符串模式。以下是使用 `sed` 过滤掉 ANSI 颜色代码的一个例子: ```bash sed -r "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g" ``` 此命令会移除所有的 ANSI 控制字符,从而清除颜色效果[^1]。 --- #### 利用 `cat` 和管道符处理带颜色的日志文件 如果日志文件包含颜色代码,可以直接将其传递给 `cat` 或其他工具进行清理。例如: ```bash cat colored_log.txt | tr -cd '\11\12\15\40-\176' ``` 这里利用了 `tr` 工具删除所有不可打印的 ASCII 字符(包括 ANSI 转义码)。仅保留标准可见字符和空白字符[^1]。 --- #### 设置环境变量禁用颜色输出 部分程序支持通过设置环境变量来关闭默认的颜色渲染功能。比如对于 GNU 的核心实用程序集合 (Coreutils),可以通过如下方式全局禁用色彩化输出: ```bash export LS_COLORS="" unset COLORFGBG ``` 这将告诉 ls 等命令不再应用任何彩色高亮显示[^1]。 另外需要注意的是,并非所有应用程序都尊重这种配置;有些可能需要额外参数或者修改其源代码重新编译才能彻底消除彩显行为。 --- #### 编写简单的脚本来批量去色 当面对大量含有格式标记的数据时,也可以考虑编写一个小巧的 Bash/PYTHON 脚本来自动化这个过程。下面给出一个 Python 版本的例子作为参考: ```python import re def strip_ansi_codes(text): ansi_escape = re.compile(r'\x1b(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])') return ansi_escape.sub('', text) if __name__ == "__main__": import sys input_data = sys.stdin.read() clean_output = strip_ansi_codes(input_data) print(clean_output) ``` 运行以上 python 脚本即可从 stdin 输入读取数据并将其中嵌入的所有ANSI控制指令剔除后再输出到stdout上去[^1]。 --- ### 注意事项 尽管上述技术可以帮助我们有效解决大多数场景下的需求,但在实际操作过程中仍需注意个别特殊情况的存在——即那些完全依赖于手动拼接字符串而非调用库函数生成装饰信息的应用软件可能会表现出异常顽固的态度拒绝遵循常规手段调整外观样式设定。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值