shell脚本之创建彩色进度条

来源:互联网 发布:淘宝网店实战宝典txt 编辑:程序博客网 时间:2024/05/24 07:03

之前的博客中也有写过进度条小程序:[http://blog.csdn.net/superficial_/article/details/69787027]

这次的进度条是基于shell脚本编写的,原理基本相似,不过多赘述,其代码如下:

#!/bin/bashi=0str=''index=0label=( "|" "/" "-" "\\")while [ $i -le 100 ]do    ((color=30+i%8))    echo -en "\e[1;"$color"m"    let index=i%4    printf "[%-100s][%3d%%][%s]\r" "$str" "$i" "${label[$index]}"    str+="#"    sleep 0.1    let i++doneprintf "\n"echo -e "\e[1;30;m"

这次的进度条比之前多加了颜色,带颜色的格式输出为: 
echo -e “\033字背景颜色;字体背景颜色m 字符串 \033[0m”

颜色相关的命令 
重新设置属性到缺省设置 
1 设置粗体 
2 设置一半亮度(模拟彩色显示器的颜色) 
4 设置下划线(模拟彩色显示器的颜色) 
5 设置闪烁 
7 设置反向图象 
8 消隐 
22 设置一般密度 
24 关闭下划线 
25 关闭闪烁 
27 关闭反向图象

// 字体颜范围(前景颜色):30~39 
30:黑 
31:红 
32:绿 
33:黄 
34:蓝色 
35:紫色 
36:深绿 
37:白色 
38:在缺省的前景颜色上设置下划线 
39:在缺省的前景颜色上关闭下划线

// 字背景颜色范围(背景颜色):40~47 
40:黑 
41:深红 
42:绿 
43:黄色 
44:蓝色 
45:紫色 
46:深绿 
47:白色

nA 光标上移n行 
nB 光标下移n行 
nC 光标右移n行 
nD 光标左移n行 
y;xH设置光标位置 
2J 清屏 
K 清除从光标到行尾的内容 
s 保存光标位置 
u 恢复光标位置 
?25l 隐藏光标 
?25h 显示光标