iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >如何理解Shell输出颜色与控制
  • 136
分享到

如何理解Shell输出颜色与控制

2023-06-09 17:06:19 136人浏览 泡泡鱼
摘要

本篇文章为大家展示了如何理解shell输出颜色与控制,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。大家都知道使用ls命令列出文件列表时,不同的文件类型会用不同的颜色显示。那么如何实现这样带颜色的文本

本篇文章为大家展示了如何理解shell输出颜色与控制,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

大家都知道使用ls命令列出文件列表时,不同的文件类型会用不同的颜色显示。那么如何实现这样带颜色的文本输出呢?答案并不复杂,不管是用shell还是C语言

一、shell下的实现方法

先来讲在shell下,如何实现。用echo命令就可以实现,参看以下例子:

  echo -e "33[32mHello, world!"

当你在终端里敲下这条命令后,是不是发现系统用绿色输出了"Hello,world!",不止如此,连之后的命令提示符都变成了绿色?不要着急,听我继续说。echo命令-e选项的作用是激活终端对反斜线转义符(即)的解释。引号内33用于引导非常规字符序列,在这里的作用就是引导设置输出属性,后边的[32m就是将前景色设置为绿色,字母m表示设置的属性类别,数字代表属性值。

设置可以单独使用,例如:

  echo -e "33[0m"

这行命令的作用是恢复属性为默认值,也就是说0m设置项用于恢复默认值。现在你的终端是不是又一切正常了?

理解了这些,剩下的就简单了。用这种命令,除了设置文本前景色,还可以设置很多属性。

下边列出其他的设置项:

  33[0m 关闭所有属性  33[1m 设置高亮度  33[4m 下划线  33[5m 闪烁  33[7m 反显  33[8m 消隐  33[30m 至 33[37m 设置前景色  33[40m 至 33[47m 设置背景色  33[nA 光标上移n行   33[nB 光标下移n行  33[nC 光标右移n行  33[nD 光标左移n行  33[y;xH设置光标位置  33[2J 清屏  33[K 清除从光标到行尾的内容  33[s 保存光标位置   33[u 恢复光标位置  33[?25l 隐藏光标  33[?25h 显示光标

各数字所代表的颜色如下:

字背景颜色范围:40----49

     40:黑

     41:深红

     42:绿

     43:黄色

     44:蓝色

     45:紫色

     46:深绿

     47:白色

字颜色:30-----------39

     30:黑

     31:红 

     32:绿

     33:黄

     34:蓝色

     35:紫色

     36:深绿 

     37:白色

另外,同类的多种设置项可以组合在一起,中间用分号(;)隔开。

如下:

  echo -e "33[20;1H33[1;4;32mHello,world33[0m"

这行命令首先33[20;1H将光标移动到终端第20行第1列,之后的33[1;4;32m将文本属性设置为高亮、带下划线且颜色为绿色,然后输出Hello,world;最后33[0m将终端属性恢复为默认值,这样就不会看到连命令完成后的命令提示符也变了样儿了。

通过以上各种命令的组合就可以实现对终端输出地复杂控制。

二、如何在C编程中实现?

理解了以上在Shell中的实现方法,关于在C中如何实现就很简单了。可以说只需要用printf函数代替上边的echo -e就OK了参见下例:

  int color = 32;  printf("33[20;1H33[1;4;%dmHello, world.33[0m", color);

这个例子类似上边shell中最后那个例子,只是这里颜色值通过变量color来指定(当然,也可以直接指定)。

三、联想

看到这里你可能会想,是不是在其他编程语言里也可以用类似的方法实现对终端输出的控制呢?答案是肯定的!比如在python中,可以如下输出:

  color=32  print “33[20;1H33[1;4;%dHello, world.33[0m"%color

这个例子的效果跟上边C的例子是相同的。

上述内容就是如何理解Shell输出颜色与控制,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网精选频道。

--结束END--

本文标题: 如何理解Shell输出颜色与控制

本文链接: https://www.lsjlt.com/news/256883.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何理解Shell输出颜色与控制
    本篇文章为大家展示了如何理解Shell输出颜色与控制,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。大家都知道使用ls命令列出文件列表时,不同的文件类型会用不同的颜色显示。那么如何实现这样带颜色的文本...
    99+
    2023-06-09
  • 深入理解Shell输出颜色与控制
    前言 大家都知道使用ls命令列出文件列表时,不同的文件类型会用不同的颜色显示。那么如何实现这样带颜色的文本输出呢?答案并不复杂,不管是用shell还是C语言。 一、shell下的实现方法 先来讲在shell...
    99+
    2022-06-04
    颜色 Shell
  • 控制输出颜色的shell脚本
    实现代码: #!/bin/sh # ANSI Color -- Use these variables to make output in different colors # and formats...
    99+
    2022-06-04
    脚本 颜色 shell
  • 如何实现控制输出颜色的shell脚本
    小编给大家分享一下如何实现控制输出颜色的shell脚本,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!实现代码:#!/bin/sh# ANSI ...
    99+
    2023-06-09
  • python如何实现控制台输出颜色
    这篇“python如何实现控制台输出颜色”除了程序员外大部分人都不太理解,今天小编为了让大家更加理解“python如何实现控制台输出颜色”,给大家总结了以下内容,具有一定借鉴价值,内容详细步骤清晰,细节处理妥当,希望大家通过这篇文章有所收获...
    99+
    2023-06-06
  • python如何使用Colorama将颜色添加到控制台输出
    这篇文章给大家分享的是有关python如何使用Colorama将颜色添加到控制台输出的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。使用Colorama将颜色添加到控制台输出Colorama是一个漂亮的跨平台模块,...
    99+
    2023-06-27
  • Java在控制台输出带颜色字符的2种方式详解
    目录通过\033特殊转义符实现Linux中的测试效果IDEA 中的测试效果Windows控制台测试结果通过org.fusesource.jansi实现Windows控制台测试结果Li...
    99+
    2022-11-12
  • 如何让shell终端和goland控制台输出彩色的文字
    终端输出彩色文字 开发工具:Mac,Goland,Mac自带shell。这是基于Mac的测试结果,根据读者留言,在Windows上不生效,标识符不一样。 在终端输出这段命令,将的到一...
    99+
    2022-11-12
  • 如何使用shell脚本函数控制颜色、定位、居中显示
    这篇文章主要为大家展示了“如何使用shell脚本函数控制颜色、定位、居中显示”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用shell脚本函数控制颜色、定位、居中显示”这篇文章吧。一、控制...
    99+
    2023-06-09
  • linux shell中如何实现控制台打印各种颜色字体和背景
    这篇文章给大家分享的是有关linux shell中如何实现控制台打印各种颜色字体和背景的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1 问题控制台打印各种颜色字体和背景字体颜色#30:黑 #31:红&n...
    99+
    2023-06-09
  • maven控制台输出乱码如何解决
    Maven 控制台输出乱码的问题通常是由于控制台编码设置不正确引起的。以下是一些解决方法:1. 在 Maven 的安装目录中找到 `...
    99+
    2023-09-23
    maven
  • ASP.NET MVC 3中如何理解控制器与视图
    本篇文章给大家分享的是有关ASP.NET MVC 3中如何理解控制器与视图,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。I:控制器和视图的基础概念控制器的概念控制器在ASP.N...
    99+
    2023-06-17
  • 如何理解css文字控制与css文本样式属性
    本篇内容主要讲解“如何理解css文字控制与css文本样式属性”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何理解css文字控制与css文本样式属性”吧!一、C...
    99+
    2022-10-19
  • 如何理解Ubuntu 10.10声音控制版面改动效果与设计草图
    本篇文章给大家分享的是有关如何理解Ubuntu 10.10声音控制版面改动效果与设计草图,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Ubuntu 10.10 将改进系统图标中...
    99+
    2023-06-16
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作