位置: 编程技术 - 正文

深入理解Shell输出颜色与控制(如何理解shell)

编辑:rootadmin

推荐整理分享深入理解Shell输出颜色与控制(如何理解shell),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:shell基础知识,shell怎么理解,shell csdn,shell的认识,shell ui,shell中输入,shell的理解,shell基础知识,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

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

一、shell下的实现方法

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

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

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

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

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

下边列出其他的设置项:

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

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

:黑

:深红

:绿

:黄色

:蓝色

:紫色

:深绿

深入理解Shell输出颜色与控制(如何理解shell)

:白色

字颜色:-----------

:黑

:红

:绿

:黄

:蓝色

:紫色

:深绿

:白色

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

如下:

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

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

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

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

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

三、联想

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

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

总结

标签: 如何理解shell

本文链接地址:https://www.jiuchutong.com/biancheng/371506.html 转载请保留说明!

上一篇:shell(bash)下“time” 命令的输出详解

下一篇:一个简单的linux命令 mkdir(一个简单的灵魂)

  • 所得税清缴时有哪些调整项
  • 房地产开发票的时间
  • 小微企业增值税起征点是多少
  • 小规模纳税人每季度超过30万交税
  • 房地产股权收购案例
  • 财产转让应纳税额如果是负数怎么办
  • 折让方式
  • 借长期借款贷在建工程
  • 股东变更没有公章和营业执照怎么办
  • 代理进口产品需要什么手续
  • 车辆购置税是否计入固定资产
  • 其他综合收益影响递延所得税负债吗
  • 销售费用变动率公式
  • 违约支付工程款的违约金
  • 自产货物用于捐赠的会计处理
  • 报销时可以一个人报销吗
  • 红字负数发票可以抵扣吗
  • 经营租入的土地使用权 待摊
  • 路由器怎么设置2.4g网络
  • 鸿蒙智能充电模式怎么用
  • 非公开发行股票是利好还是利空
  • 计提本月应付的租金
  • 出版社购买版权是什么
  • linux cls命令
  • 员工自己垫付的费用怎么走账
  • 什么情形不属于经警告无效人民警察可以使用武器的情形
  • php 配置
  • 购销合同印花税税率2023
  • 怎么做委托银行业务
  • 车船税单子什么样
  • 雷尼尔山位于美国西北部
  • php声明一个类
  • 零售金银首饰的商场要交消费税吗
  • php流程图
  • 什么是累计预扣预缴应纳税所得额
  • 视听结合的景物描写
  • vue动态绑定背景图
  • linux0.11编译
  • 哪些农产品属于免税
  • 建筑企业提供建筑服务适用一般计税方法的,以取得
  • 退预收款需要对账吗
  • 怎么查企业历史
  • 赠送给客户的礼品税法
  • 购买加油卡走哪个平台好
  • 现金流量套期与公允价值套期的区别
  • 什么各级工会的离休退休人员的待遇
  • 赠送的商品如何开发票
  • 监控 固定资产
  • 现金日记账怎么记账
  • 员工休产假不发工资违法吗
  • 购买无形资产的手续费计入
  • 出口视同内销如何申报?
  • 应收应付的意思
  • 客运运价杂费收据填写例题
  • 苗木补偿款
  • win2000停止服务
  • ubuntu文本编辑器怎么打开
  • linux安装有几种方法
  • 鲁大师安装失败怎么回事
  • Win10 Redstone版Build 14251现身 正式版将在7月份发布
  • win7玩英雄联盟卡顿怎么解决
  • win10预览版21301bug
  • appiumforwindows的简单安装和启动(安卓)
  • 基于web的学生成绩管理系统毕业论文
  • python hashcode
  • jQuery实现CheckBox全选、全不选功能
  • shell脚本 -ne 0
  • python多进程数量限制
  • unity物体碰撞爆炸
  • 大学生活最后的日子
  • 自定义圆角控件
  • Android java.lang.IllegalArgumentException: pointerIndex out of range
  • 谷歌chrome浏览器网页版网址
  • python坑人代码
  • js数组用法
  • 发票查询打印如何操作
  • 怎样把短信转发到微信
  • 运费没有发票怎么报销
  • 德阳契税收费标准2022
  • 金三申报系统里面怎么申报社保?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设