# Linux下替换删除文件中的颜色等控制字符的方法

news/2024/7/5 6:22:32

Linux下替换删除文件中的颜色等控制字符的方法

文章目录

  • Linux下替换删除文件中的颜色等控制字符的方法
    • 1 Linux下的控制字符(显示的文字并不是他本身):
    • 2 颜色字符范例:
    • 3 替换
    • 4 最后

我们在shell编程显示输出时,会定义文字颜色,以便于识别,但有时还要把输出的文字发送给开发人员,此时文件里的颜色控制字符非常影响阅读体验,所以最好把他删除替换。

方法是:找到控制字符的Unicode编码(假设是utf-8编码的文件),并把他替换为空

1 Linux下的控制字符(显示的文字并不是他本身):

vim显示(彩色)less显示(白底黑字)Unicode编码
^[ESC0x1B (\x1B)
^M^Mox0D (\x0D)

更多控制字符请看:man console_codes

2 颜色字符范例:

^[[31m
^[[34;1m
^[[30;42;1m

3 替换

  • 替换【^[】颜色相关控制字符:
sed  -i -E  "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?){0,2}[m]//g"   t.txt
  • 替换【^M】控制字符
sed  -i -E  "s/\x0D//g"  t.txt
  • 替换更多
sed  -i -E  -e "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?){0,2}[m|A-Z]//g"  -e "s/\x0D//g"  t.txt

4 最后

img

爱你!


http://lihuaxi.xjx100.cn/news/1358559.html

相关文章

精简版面试宝典2023-4

Java程序员面试宝典 Java基础面试提 java反射 Java中的反射机制是指在运行时,动态地获取类的信息,并操作类的成员(方法、 属性、构造器等) Java中的反射机制使得程序可以在运行时根据需要,获取和操作类的信息,而无需在编译时确…

【力扣算法16】之 18. 四数之和 python

文章目录 问题描述示例1示例2提示 思路分析代码分析完整代码详细分析运行效果截图调用示例运行结果 完结 问题描述 给你一个由 n 个整数组成的数组 nums ,和一个目标值 target 。请你找出并返回满足下述全部条件且不重复的四元组 [nums[a], nums[b], nums[c], nums[…

Linux系统部署Tomcat详细教程(图文讲解)

前言:本篇博客教大家如何一步一步使用Linux系统去部署自己的Tomcat服务器,每一行代码都是我自己严格执行过的,共分为了8点进行阐述,逻辑清晰! 目录 一、安装JDK环境 二、准备Tomcat安装包 三、安装Tomcat 四、配置…

Rancher 系列文章-RHEL7.8 离线有代理条件下安装单节点 Rancher

一 基础信息 1.1 前提 本次安装的为 20220129 最新版:Rancher v2.6.3VM 版本为 RHEL 7.8, 7.9 或 8.2, 8.3, 8.4(Rancher 官网要求)VM YUM 仓库:已配置对应版本的 RHEL 和 EPEL YUM 仓库VM 提供 root 权限已配置 ntp(防止因为时…

深入篇【C++】谈vector中的深浅拷贝与迭代器失效问题

深入篇【C】谈vector中的深浅拷贝与迭代器失效问题 Ⅰ.深浅拷贝问题1.内置类型深拷贝2.自定义类型深拷贝 Ⅱ.迭代器失效问题1.内部迭代器失效2.外部迭代器失效 Ⅰ.深浅拷贝问题 1.内置类型深拷贝 浅拷贝是什么意思?就是单纯的值拷贝。 浅拷贝的坏处: ①…

【Linux】VMware 安装 Centos7 超详细

1、下载✈ VMware链接:https://pan.baidu.com/s/1DnleWeV-JHjZiV9_ENwFmg?pwdb1tj 提取码:b1tj 阿里云镜像:centos安装包下载_开源镜像站-阿里云 CentOS官网镜像: Download 2、虚拟机准备 2.1、打开VMware选择新建虚拟机…

创新创业项目申报管理系统vue+nodejs+mysql

开发语言 node.js 框架:Express 前端:Vue.js 数据库:mysql 数据库工具:Navicat 开发软件:VScode 本站是一个B/S模式系统,采用nodejs框架,MYSQL数据库设计开发,充分保证系统的稳定性。系统具有界…

C语言小项目——通讯录高阶(文件管理版)

通讯录初阶: 点这里 通讯录中阶: 点这里 文件管理版本改进之处通讯录初始化退出通讯录并保存 完整代码contact.hcontact.ctest.c 文件管理版本改进之处 通讯录初始化 contact.c 退出通讯录并保存 test.c contact.c contact.h 完整代码 contact.h #pragma once#include&l…