Linux - 简明Shell编程12 - 定制输出(ColorOutput)
示例脚本及注释
#!/bin/bash
echo -e "\033[32m" # 设置输出属性,绿色字体
echo "This is a test!"
echo -e "\033[0m" # 设置输出属性,恢复默认值
echo -e "\033[31m Hello Color! \033[0m" # 输出指定颜色字体
# echo -e :激活终端对反斜线转义符(\)的解释
# \033 :引导非常规字符序列(这里是引导设置输出属性)
# [31m :设置前景色(字体)为红色,字母m表示设置的属性类别,数字代表属性值
# Hello Color!”:输出的字符
# \033[0m :恢复属性为默认值
echo -e '\033[44;37;5m Color \033[0m Cool !' # 设置多个输出属性
# \033[44;37;5m :44背景蓝色,37字体白色,5字体闪烁
# \033[0m :恢复属性为默认值
echo -e "\033[2J\033[6;18H\033[1;4;32m Thanks,Color! \033[0m" # 设置更多输出属性
# \033[2J : 清除屏幕
# \033[6;18H :光标移动到终端第6行第18列
# \033[1;4;32m :字体高亮、带下划线且颜色为绿色
# \033[0m :恢复属性为默认值
# ### 设置输出属性
# - 利用echo命令和非常规字符序列,可以设置输出属性,实现特定的输出形式;
# - 只对当前shell生效;如果想永久生效,需要在“.bash_profile”或“.bashrc”等文件中添加相关配置;
# - 可以同时设置多个输出属性,并且不区分属性顺序;
# - 对于某些特殊字符,需要注意单引号和双引号的使用区别;
#
#
# ### 常用属性
# - \033[0m 缺省设置
# - \033[1m 高亮
# - \033[4m 下划线
# - \033[5m 闪烁
# - \033[7m 反向显示(前景色和背景色)
# - \033[8m 隐藏显示
# - \033[24m 关闭下划线
# - \033[25m 关闭闪烁
# - \033[27m 关闭反向显示
# - \033[30m 至 \33[37m 设置前景色(30黑 31红 32绿 33黄 34蓝 35紫 36青 37白)
# - \033[40m 至 \33[47m 设置背景色(40黑 41红 42绿 43黄 44青 45蓝 46青 47白)
# - \033[49m 设置缺省黑色背景
#
#
# ### ANSI ESCAPE CODE
# - ANSI控制码(ANSI ESCAPE CODE/SEQUENCES)用于在字符显示系统中控制输出属性;
# - ANSI控制码开始的标志都为ESC[,ESC对应ASCII码表的033(八进制);
# - Linux命令echo用“-e”选项启用转义“\e”或“\033”来输出Esc符号,“\033[31m”即为“ESC[31m”;
# - 更多信息:https://en.wikipedia.org/wiki/ANSI_escape_code
Linux - 简明Shell编程12 - 定制输出(ColorOutput)的更多相关文章
- Shell - 简明Shell入门12 - 定制输出(ColorOutput)
示例脚本及注释 #!/bin/bash echo -e "\033[32m" # 设置输出属性,绿色字体 echo "This is a test!" echo ...
- Linux - 简明Shell编程01 - 第一个脚本(HelloShell)
脚本地址 https://github.com/anliven/L-Shell/tree/master/Shell-Basics 示例脚本及注释 #!/bin/bash echo "hell ...
- Linux - 简明Shell编程02 - 变量(Variable)
脚本地址 https://github.com/anliven/L-Shell/tree/master/Shell-Basics 示例脚本及注释 #!/bin/bash v1=test-variabl ...
- Linux - 简明Shell编程03 - 字符串(String)
脚本地址 https://github.com/anliven/L-Shell/tree/master/Shell-Basics 示例脚本及注释 #!/bin/bash str="Shell ...
- Linux - 简明Shell编程09 - 重定向(Redirection)
脚本地址 https://github.com/anliven/L-Shell/tree/master/Shell-Basics 示例脚本及注释 #!/bin/bash pwd > 1.log ...
- Linux - 简明Shell编程13 - 用户输入(UserInput)
脚本地址 https://github.com/anliven/L-Shell/tree/master/Shell-Basics 示例脚本及注释 1 - arguments #!/bin/bash i ...
- Linux - 简明Shell编程14 - 操作符(Operator)
脚本地址 https://github.com/anliven/L-Shell/tree/master/Shell-Basics 示例脚本及注释 #!/bin/bash echo "No c ...
- Linux - 简明Shell编程04 - 判断语句(If)
脚本地址 https://github.com/anliven/L-Shell/tree/master/Shell-Basics 示例脚本及注释 #!/bin/bash var=$1 # 将脚本的第一 ...
- Linux - 简明Shell编程07 - 数组(Array)
脚本地址 https://github.com/anliven/L-Shell/tree/master/Shell-Basics 示例脚本及注释 #!/bin/bash test0=() # 定义数组 ...
随机推荐
- Redis 基础数据结构与对象
Redis用到的底层数据结构有:简单动态字符串.双端链表.字典.压缩列表.整数集合.跳跃表等,Redis并没有直接使用这些数据结构来实现键值对数据库,而是基于这些数据结构创建了一个对象系统,这个系统包 ...
- SAP PI入门
本教程的目的是让读者理解:SAP Process Intergration(以下简称SAP PI)是什么.我们不需要探究课题的本质,但是会讨论SAP PI的架构和不同特点.本文只会覆盖到PI的基本特点 ...
- SharePoint 2016 修改左上角连接
SharePoint 2016默认会有左上角这样的一个功能. 估计都想把它改掉. 方法1: 打开,输入下面的命令,可将图中的sharepoint修改为想要的文字 $webapp = Get-SPWe ...
- XML读取两种方法
//第一种SAX方法解析 package a20170722.xmlex; import java.io.File; import java.util.ArrayList; import java.u ...
- Vijos 1006 晴天小猪历险记之Hill 单源单汇最短路
背景 在很久很久以前,有一个动物村庄,那里是猪的乐园(^_^),村民们勤劳.勇敢.善良.团结-- 不过有一天,最小的小小猪生病了,而这种病是极其罕见的,因此大家都没有储存这种药物.所以晴天小猪自告奋勇 ...
- javascript闭包的妙用——实现函数的重载
最近在看John Resig 与 Bear Bibeault的<JavaScript 忍者秘籍>.这本书处处提现了js的魔法(从我这个写强类型语言的人看来).js能够点石成金,处处体现着它 ...
- OpenStack(企业私有云)万里长征第五步——虚拟机Migrate&Resize
一.前言 上一篇文章讲了OpenStack的部署和简单操作,今天介绍一下如何实现虚拟机的Migrate以及Resize.Migrate操作和Resize操作基本上属于同一种操作,Migrate操作只是 ...
- 业余草教你解读Spark源码阅读之HistoryServer
HistoryServer服务可以让用户通过Spark UI界面,查看历史应用(已经执行完的应用)的执行细节,比如job信息.stage信息.task信息等,该功能是基于spark eventlogs ...
- POJ 3683 Priest John's Busiest Day / OpenJ_Bailian 3788 Priest John's Busiest Day(2-sat问题)
POJ 3683 Priest John's Busiest Day / OpenJ_Bailian 3788 Priest John's Busiest Day(2-sat问题) Descripti ...
- 玩玩微信公众号Java版之六:微信网页授权
我们经常会访问一些网站,用微信登录的时候需要用到授权,那么微信网页授权是怎么一回事呢,一起来看看吧! 参考官方文档:https://mp.weixin.qq.com/wiki?t=resource ...