快捷搜索:

深入理解Shell输出颜色与控制

深入理解Shell输出颜色与控制

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

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

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

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

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

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

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

  以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

  Linux file命令用于辨识文件类型。通过file指令,我们得以辨识该文件的类型。语法file [-bcLvz][-f <名称文件>][-m <魔法数字文件>...][文件或目录...]file 是通过查看文件的头部信息来获取文件类型,而不是像 Win...查看详情

  Linux下的两种定时执行任务的方法:at命令,以及crontab服务,小编整理了关于这2个命令的详细用法,希望大家学习后能够更加深入的理解。(1)at命令假如我们只是想要让特定任务运行一次,那么,这时候就要用到at监控程序了。设置at命令很简单,指示定运行的时间,那么就会在哪个...查看详情

  前言创建交互式shell脚本最常用的方法是使用菜单。提供各种选项可以帮助脚本用户了解脚本能做什么,不能做什么;通常菜单脚本会清空显示区域,然后显示可用的选项列表。本文给大家详细介绍了shell创建文本菜单与窗口部件的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细...查看详情

  简介: FTP(File Transfer Protocol, FTP)是TCP/IP网络上两台计算机传送文件的协议,FTP是在TCP/IP网络和INTERNET上最早使用的协议之一,它属于网络协议组的应用层。FTP客户机可以给服务器发出命令来下载文件,上...查看详情

  使用Shell脚本在Linux服务器上能够控制、毁坏或者获取任何东西,通过一些巧妙的攻击方法黑客可能会获取巨大的价值,但大多数攻击也留下踪迹。当然,这些踪迹也可通过Shell脚本等方法来隐藏。寻找攻击证据就从攻击者留下的这些痕迹开始,如文件的修改日期。每一个 Linu...查看详情

  前言相信大家应该都有所体会,shell脚本可以说作用非常大,在服务器领域,用shell操作事务可比手动点击要方便快捷得多了。虽然只是文字界面,但是其强大的处理功能,会让各种操作超乎想象。而且,也可以将这些习惯移植到日常的工作当中,提升办事效率。其实shell语法很简单怎么用asp源码在电脑上制作网,基本上就是...查看详情

  Linux 下没有百度网盘客户端,用浏览器下载速度慢得急死人鼠标移到链接处, 右键, 然后复制链接接着在终端里输入axel -n 50 -o filename.ext “粘贴链接到此处”axel 是下载程序名, -n 后面数字是线程数,多少自己决定, -o 后面下载到本机上 保持...查看详情

  一、概述为禁止普通用户su至root,需要分别修改/etc/pam.d/su和/etc/login.defs两个配置文件。二、详细配置(1)去除/etc/pam.d/su文件中如下行的注释:#auth required pam_wheel.so use_uid(2...查看详情

  Linux中的bz2压缩格式的实例详解一 语法bzip2 源文件压缩为bz2格式,不保存源文件bzip2 -k 源文件压缩之后保留原文件注意:bzip2命令不能压缩目录bzip2 -d 压缩文件解压缩,-k保留压缩文件bunzip2 压缩文件解压缩,-k保留压缩文件二...查看详情

  Linux链接命令的实例详解一 语法ln -s [源文件] [目标文件]命令英文含义:link功能描述:生成链接文件选项:-s 创建软链接 二 硬链接特征原文件和硬链接文件删除其中任何一个都没问题asp教程。三 硬链接实战[root@localhost ~]# cd test[root@l...查看详情

您可能还会对下面的文章感兴趣: