代码如下:

1 #!/bin/bash

2 i=0;

3 str=""

4 arr=("|" "/" "-" "\\")

5 while [ $i -le 100 ]

6 do

7 let index=i%4

8 let indexcolor=i%8

9 let color=30+indexcolor

10 printf "\e[0;$color;1m[%-100s][%d%%]%c\r" "$str" "$i" "${arr[$index]}"

11 sleep 0.1

12 let i++

13 str+='='

14 done

15 printf "\n"

没错代码就这么简单 其实前面的都差不多就是下面的输出时颜色控制线面我们就介绍一下颜色控制的原理

终端的字符颜色由转义序列(Escape Sequence)控制,是文本模式下的系统显示功能,与具体语言无关。转义序列以控制字符'ESC'开头。该字符的ASCII码十进制表示为27,十六进制表示为0x1B,八进制表示为033。多数转义序列超过两个字符,故通常以'ESC'和左括号'[‘开头。该起始序列称为控制序列引导符(CSI,Control Sequence Intro),通由‘\033['或‘\e['代替。

通过转义序列设置终端显示属性时,可采用以下格式:

1 \033[ Param {;Param;…}m 或 \e[ Param {;Param;…}m

其中,‘\033['或‘\e['引导转义序列,‘m'表示设置属性并结束转义序列。Param为属性值,{…}表示可选(多个参数之间用分号隔开,与顺序无关)。 转义序列相关的常用参数如下(通过man console_codes命令可查看更多的参数描述):

显示: 0(默认)、1(粗体/高亮)、22(非粗体)、4(单条下划线)、24(无下划线)、5(闪烁)、25(无闪烁)、7(反显、翻转前景色和背景色)、27(无反显)

颜色: 0(黑)、1(红)、2(绿)、 3(黄)、4(蓝)、5(洋红)、6(青)、7(白)

前景色为30+颜色值,如31表示前景色为红色;背景色为40+颜色值,如41表示背景色为红色。

设置格式:

\033[显示方式;前景色;背景色m输出字符串\033[0m 或

\e[显示方式;前景色;背景色m输出字符串\033[0m

bash给脚本加进度条_shell脚本实现多彩进度条相关推荐

  1. mysql脚本自动拉起_shell脚本自动拉起启动程序

    一.我们先看看编写的shell脚本的内容,该shell的作用主要是实现监控某个程序崩溃之后就自动重启该进程. #!/bin/bash while true do procnum=` ps -ef|gr ...

  2. shell 脚本比较字符串相等_shell脚本--逻辑判断与字符串比较

    涉及到比较和判断的时候,要注意 整数比较使用-lt,-gt,ge等比较运算符,详情参考:整数比较 文件测试使用 -d, -f, -x等运算发,详情参考:文件测试 逻辑判断使用    && ...

  3. shell脚本删除冒号空格_shell脚本如何删除指定字符串,文档如下:

    展开全部 用正则匹配e68a8462616964757a686964616f31333361313338就可以了. shell脚本regex正则表达式 和 字符串替换 任意字符 ^行首匹配 $行尾匹配 ...

  4. linux 脚本调用企业微信_shell脚本实现企业微信报警

    CorpID="ww3c6298264d839e2f" Secret="YvyMQpMRIoXtdQRWo0RNkMBTZnHWKvBwC3ILkyuCsKQ" ...

  5. unity3d做会减少的血条_用Unity做血条或进度条常用脚本 - 纳金网

    本节汇宝盆为大家带来的是:用Unity做血条或进度条常用脚本 * 血条或进度条的效果 用Unity3d做血条或进度条真的很方便,GUI里scrollbar就可以轻松实现,再加上lerp一个血条或进度条 ...

  6. redchat怎么编写shell脚本_shell脚本编写思路

    shell有两种执行命令的方式: 交互式(Interactive):解释执行用户的命令,用户输入一条命令,Shell就解释执行一条. 批处理(Batch):用户事先写一个Shell脚本(Script) ...

  7. vbs如何写进度条_VBS 调用 HTA 实现进度条加载

    因为工作需要前几天做了个导表脚本 XLS2TXT 但是当表很多时有个纠结的问题,不显示EXCEL会让人不知道进展,还以为卡死了. 显示excel 不停的刷表格,很不美观. 我是无法接受这种情况的,所以 ...

  8. bat脚本交互输入_Shell脚本的应用(一)

    会不会有那么一天,生活可以简单到每天清早踏上一辆载着鲜花的脚踏车,微笑着穿过窄窄的街巷,为爱花的人送去芬芳,为需要知识的你送去帮助. 简介 随着Linux系统在企业中的应用越来越多,服务器的自动化管理 ...

  9. shell不允许输入空字符_shell脚本编程之控制脚本

    点蓝色字关注"CurryCoder的程序人生" 微信公众号:CurryCoder的程序人生 欢迎关注我,一起学习,一起进步! 1.引言 目前为止,运行脚本的唯一方式是以实时模式在命 ...

最新文章

  1. (DP)51NOD 1183 编辑距离
  2. hdu4287 水题
  3. 阿里云debian mysql_记录下在阿里云linux上安装与配置Mysql
  4. CacheManager - 用 C# 编写的 .NET 的开源缓存抽象层
  5. 计算机网络ipv4到ipv6怎么实现,论计算机网络协议IPV4到IPV6的过渡策略|房屋搬迁过渡协议...
  6. myeclipse怎么运行c语言,windows下MyEclipse安装配置C/C++开发环境
  7. WinAPI: midiOutClose - 关闭输出设备
  8. 别信了大佬的“鬼话”,想造无人驾驶到底进展如何吗?
  9. LR运行负载测试场景-笔记
  10. Centos挂载iscsi存储
  11. 固定资产管理员计算机应用,浅谈计算机在固定资产管理中应用.doc
  12. 麦子学院深度学习进阶课程题目纲要
  13. 三角网导线平差实例_三角网间接平差示例
  14. URL在线编码/解码工具
  15. VB NetShare
  16. 七、树莓派做Aria2下载机
  17. 互联网教育:玩法与困境
  18. Scrapy 入门教程
  19. 华为云OBS究竟是什么?
  20. 马氏快速记星座法——5分钟快速记忆星座和月份!超快!超准!超实用!

热门文章

  1. 2019全球编程语言高薪排行榜登场;余承东正式宣布华为IFA2019 或发布麒麟990;OPPO、vivo和小米成立互传联盟…...
  2. 微服务、Kubernetes和无服务器之后,即将发生的……
  3. python 覆盖list_【Python妙招】gt;gt;gt;看腻了能不能换成别的啊……当然可以啦:)...
  4. easyexcel 日期类型 convert_数据库的几种日期时间类型,你真的会用吗?
  5. class传参 python_Python 初学者必备的常用内置函数
  6. mysql写偏斜_【MySQL】探究之常用SQL
  7. 数据装载器连接其他oracle数据库_07
  8. 如何写一个bat批处理自动上传文件到FTP
  9. 01_SpringCoud 整合SpringCoud alibaba Nacos
  10. Linux安装SonarQube和sonar-scanner详细安装及配置