位置: 编程技术 - 正文

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

  • 随机赠送礼品个人所得税
  • 销售佣金计入什么会计科目
  • 小规模企业税务登记流程
  • 总账和成本哪个工资高
  • 公司清算存货怎么算
  • 加计抵减附加税怎么做账务处理
  • 残保金申报在哪申报
  • 外商投资企业的组织形式,组织机构
  • 劳务费税后算税前公式
  • 房地产企业拆迁安置土地增值税清算疑点
  • 防伪税控开票系统技术维护费
  • 员工集体旅游费会计分录
  • 社保逾期滞纳金可以免除吗?
  • 购进二手办公设备如何进行入账?
  • 房地产企业借款过多的原因
  • 采购合同可以包含安装吗
  • 企业接收政府划入资产的税务处理办法
  • 企业个人完税证明怎么开
  • 所得税汇算调增调减是什么意思
  • 小规模纳税人可以抵扣进项税吗
  • 转让法人要注意什么
  • 购物卡开预付卡有风险吗
  • 倒增值税发票过程
  • 税法递延纳税
  • 支票存根没有进账怎么办
  • 违约支付罚款计入哪里
  • 技术服务费成本票是什么
  • 发票盖错章了怎么办呢
  • win11怎么把默认c盘改到d盘
  • 货款已经收到
  • 劳务费个税计算方式
  • 期初摊余成本是初始入账价值吗
  • linux 创建sh
  • 招待费如何列支
  • 接受捐赠的固定资产可以入账依据是哪些?
  • 沃特金斯格伦州立公园
  • 当月缴纳上月未缴纳社保
  • yii框架连接数据库
  • 劳务公司成本票不够怎么办
  • php 常用算法
  • php基于单例模式开发
  • 代发工资范围
  • 委托开发软件的版权归委托人所有
  • 小规模纳税人如何界定
  • 建筑工地仓库管理流程
  • 启动mysql的语句
  • 新办企业购置设备申请
  • 开票钱收不回怎么办
  • 以前年度损益调整结转到本年利润吗
  • 非营利企业的劳动力需求有哪些特点
  • 预收帐款
  • 留存收益的个别资本成本计算公式
  • sqlserver 创建链接服务器
  • 银行开的手续费发票开错了
  • 代数分配法的优缺点和适用范围
  • 积分购物骗局
  • 应纳税额和已缴税额一样
  • 房地产企业沙盘模拟
  • 车辆不在公司名下加油费可以进公司吗
  • 融资租赁固定资产的账务处理实例
  • 销项税和进项税的借贷方向
  • 当月结转销售成本分录
  • 营业成本如何设一级科目
  • sql存储过程实例
  • windows画图程序名
  • 4G内存时linux的mtrr表不正确的解决
  • 远程操作win10
  • xp事件管理器
  • macbook截
  • django定时器
  • 有关于月亮的诗句
  • js控制鼠标位置
  • 自定义标签的开发的3个步骤?
  • 用javascript写简单网页
  • javascriptj
  • mvp 框架
  • androidのLinearLayout中组件右对齐
  • javascript设计简单计算机
  • 怎么知道税控盘有没有注销
  • 快递代缴的关税有税单吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设