位置: 编程技术 - 正文

深入理解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(一个简单的灵魂)

  • 印花税计提缴纳的会计分录
  • 未达到起征点的增值税会计处理
  • 其他综合收益包括资本公积吗
  • 减值准备为什么影响利润总额
  • 水费3个点税
  • 小规模纳税人报销会计分录
  • 非盈利组织是什么
  • 企业怎么挑选计提折旧方式方法
  • 金融资产的划分标准以及相关的处理怎么做
  • 行政事业单位盘亏或毁损的固定资产
  • 本月完工入库会计分录
  • 延迟交款收息做什么科目?
  • 信用卡逾期滞纳金是按天还是按月计算
  • 扣员工餐费需要缴纳个税吗
  • 海运费需要代扣代缴吗
  • 教育附加费的计算方法
  • 小企业处置固定资产
  • 开具的红字发票金税三期怎么报税?
  • 上海中级会计报名入口
  • 五险一金的会计分录怎么写
  • 2021年6月更新
  • window10过期
  • 出纳交接工作注意
  • 预计负债的计量,如何确定最佳估计数
  • 定期存款是否属于受限资金
  • ue4 像素流并发
  • 土豆发芽了能吃吗有没有毒
  • 存放同业属于什么业务
  • php 统计
  • 豹七三七粉的价格
  • 发票开烟酒
  • php cli 多线程
  • spring三级缓存有什么用
  • php实现支付宝支付
  • 增值税发票复印件可以入账吗与原件一致
  • 印花税申报未扣款在哪里查询
  • 水利基金补申报怎么操作
  • 复核人和收款人一样了怎么办
  • css文件代码示例
  • python循环语句的语法
  • sqlserver怎么把数据库导出来
  • mysql分库分表实践
  • vue2响应式原理面试回答
  • 资产负债表应付职工薪酬是负数是什么原因
  • access 模糊匹配
  • 房地产企业土地增值税清算
  • 开销项负数发票怎么做账
  • 企业销售收入的确认应具备哪些条件
  • 补充登记法是全部都用蓝字吗
  • 润滑油消费税计算公式
  • 个体工商户生产经营所得税优惠政策
  • 库存商品暂估入库科目怎么做
  • 工程前期费用包含哪些
  • 公司破产账务处理
  • 建筑设计行业收费标准
  • 单式记账法缺点是什么
  • 预付账款可以开发票吗
  • 投资收益的账务怎么处理
  • 支付宝里的收入和支出明细能查多久的?
  • 建筑施工企业会计分录大全
  • sql获取guid
  • chrome浏览器81.0
  • rpm包安装的apache可以如何启动
  • winxp回收站在哪里
  • centos挂载lun
  • 重装win7系统后鼠标键盘不能用
  • qvp32.exe - qvp32是什么进程 有什么作用
  • win8怎么彻底删除安装的软件
  • lnmp php
  • win7系统出现蓝屏怎么解决
  • windows 10更新卡住
  • python的正则语法
  • 英语中our和my的区别
  • javascript面向对象编程
  • jQuery插件能输出到控制台
  • cmd读取d盘
  • 深入浅出nginx实战
  • linux多线程编程实例
  • android 动态添加控件
  • 江西增值税发票查询
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设