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

news2024/12/22 6:08:43

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://www.coloradmin.cn/o/773420.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Java】一个简单的接口例子(帮助理解接口+多态)

要求: 请实现笔记本电脑使用USB鼠标、USB键盘的例子 1. USB 接口:包含打开设备、关闭设备功能 2. 笔记本类:包含开机功能、关机功能、使用 USB 设备功能 3. 鼠标类:实现 USB 接口,并具备点击功能 4. 键盘类&am…

人才输送|我的“捷码低代码工程师”转型之路!

最新职位 招聘岗位:低代码工程师 需求公司:上海北斗西虹桥基地 应聘条件:1、本科以上,最好硕士;2、有三年以上开发经验; 工作内容:带领团队用捷码低代码平台进行项目开发。 工作地点&#xff1a…

长城汽车Hi4技术品牌成果初现,大象转身必将势不可挡

今年1-6月,长城汽车销售52万辆,新能源车型销售9.3万辆,同比增长47%;智能新能源新产品密集上市,新能源销量与占比逐月攀升,6月销售超2.6万辆,占比突破25%,皆创历史新高; 全…

文档翻译成中文怎么弄?今天分享文档翻译免费要怎么弄

有一天,小华来到了一个外国小镇。然而,他发现镇上的路牌、菜单和旅游手册都是用外语写的,让他感到非常困扰。他不知道该去哪里游玩,也无法理解当地的文化和历史。他非常喜欢这个小镇的风景,但是他无法读懂他们这里的一…

【Linux -- 查看进程--ps,top,pstree】

Linux – 查看进程 文章目录 Linux -- 查看进程一、查看进程 -- ps二、动态查看进程的变化 -- top三、pstree -- 可以找进程之间的相关性总结 提示:以下是本篇文章正文内容,下面案例可供参考 一、查看进程 – ps 更详细的可以通过man ps查看 ps aux …

深入理解Java虚拟机(三)垃圾收集器与内存分配策略

Java与C之间有一堵由内存动态分配和垃圾收集技术所围成的高墙,墙外面的人想进去,墙里面的人却想出来。 Java内存运行时区域的各个部分,其中程序计数器、虚拟机栈、本地方法栈3个区域随线程而生,随线程而灭,栈中的栈帧随…

echarts图例对齐

富文本不生效,是没有设置lineHeight

【运维】shell监控脚本结合钉钉机器人实现服务及服务器监控告警

文章目录 前言一、监控shell脚本和钉钉机器人二、创建钉钉机器人:1.在钉钉群聊里点击设置2.在设置里点击机器人选项3.再点击添加机器人4.再点击选择自定义机器人5.设置机器人名称、是否加密、是否限制ip、以及触发关键字6.获取机器人的Webhook地址 三、编写监控脚本…

MySQL表关联更新

背景: 有两张表,一张class信息表,一张student信息表,但student表里的信息存在错误,需要用class表中的信息去更新student表数据。 方法一: update student_info s set class_name (select class_name fr…

一本通12951917:装箱问题

不知道说什么废话好了 题目 装箱问题 描述 有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30),每个物品…

Spring 的依赖注入

Spring 的依赖注入 文章目录 Spring 的依赖注入每博一文案1. 依赖注入1.1 构造注入1.1.1 通过参数名进行构造注入1.1.2 通过参数的下标,进行构造注入1.1.3 不指定参数下标,不指定参数名字,通过自动装配的方式 1.2 set 注入 2. set注入的各种方…

uniapp 小程序 picker 日期时间段选择(精确到年月日时分+周几)

效果图&#xff1a; picker时间选择器 精确到年月日时分周几 需要引入moment.js&#xff0c;有可能引入后在项目内会报错&#xff0c;可以考虑把选择日期作为一个组件引入 1、timepage.vue组件封装 <template><view><picker mode"multiSelector" :va…

人才输送|捷码帮我走出求职迷茫期!

大家好&#xff0c;我是边文军。 很荣幸应余老师之邀&#xff0c;在这里和各位兄弟姐妹分享应聘青岛英哲低代码工程师的求职经历&#xff0c;希望能给大家提供点帮助。 01 自我介绍 先来做一个自我介绍吧&#xff01;我是计算机专业出身&#xff0c;学的移动应用开发专业。学…

【贪心算法part01】| 455.分发饼干、376.摆动序列、53.最大子序和

目录 &#x1f388;LeetCode455.分发饼干 &#x1f388;LeetCode376.摆动序列 &#x1f388;LeetCode53.最大子序和 &#x1f388;LeetCode455.分发饼干 链接&#xff1a;455.分发饼干 假设你是一位很棒的家长&#xff0c;想要给你的孩子们一些小饼干。但是&#xff0c;…

决赛结束,颁奖在即:2023隐私计算大会暨“星河杯”隐私计算大赛颁奖典礼震撼来袭!

7月11日-12日&#xff0c;首届“星河杯”隐私计算大赛4个赛题共计37支团队陆续完成决赛评审&#xff0c;决出的大赛获奖团队代表将受邀出席7月26日在青岛星河湾酒店举办的2023隐私计算大会暨首届“星河杯”隐私计算颁奖典礼。 2023隐私计算大会暨首届“星河杯”隐私计算大赛颁奖…

上海市静安区财政局领导带队调研合合信息,政企共话科技创新

近日&#xff0c;上海市静安区财政局副局长应文婷一行赴市北高新园区&#xff0c;实地走访科技企业上海合合信息科技股份有限公司&#xff08;简称“合合信息”&#xff09;&#xff0c;了解公司技术创新成果及产业布局&#xff0c;倾听企业在发展过程中的政策需求。合合信息董…

【FPGA】Vivado 保姆级安装教程 | 从官网下载安装包开始到安装完毕 | 每步都有详细截图说明 | 支持无脑跟装

目录 &#xff08;如果你有安装包&#xff0c;可跳转至 Step5&#xff09; Vivado 介绍 Step1&#xff1a;进入官网 Step2&#xff1a;注册账号 Step3&#xff1a;进入下载页面 Step4&#xff1a;下载安装包 Step5&#xff1a;安装 Step6&#xff1a;等待软件安装完成 …

Linux--在vim中查看man手册中某个函数的库函数 !man 函数名

比如我用到fork函数&#xff0c;但是我不知道它的库函数&#xff0c;在不想退出vim的情况下&#xff0c;我们可以在命令模式下输入以下指令&#xff1a; !man fork 示例&#xff1a; 注&#xff1a;默认打开的是man手册最底部&#xff0c;需要往上翻才能找到库函数

中国农机自动化:靠补贴喂养还是真市场需求?

近年来&#xff0c;随着科技的快速发展和农业现代化进程的加快&#xff0c;中国农机自动化技术得到了广泛应用和推广。但高速的发展之下&#xff0c;不禁有人疑问&#xff1a;中国农机自动化&#xff1a;靠补贴喂养还是真市场需求&#xff1f; 政策补贴大力支持农机自动化引担忧…

Vue中值的传递(父传子,子传父,子父同步)

1.父组件->子组件传递数据 ①父组件通过 v-bind: 属性绑定的形式&#xff0c;把数据传递给子组件 ②子组件中&#xff0c;通过props接收父组件传递过来的数据 2.子组件->父组件传递数据 1.在子组件中&#xff1a; 在emits定义自定义事件通过触发事件来触发自定义函数&am…