shell彩色进度条

在编写进度条之前,首先要了解一些基本知识。
在linux下,\r是回车,回车是表示将光标移动到当前行的起始位置,\n是换行,换行表示将光标一定到当前行的下一行,保持还在一列。
而我们所编写的进度条就是不断刷新输入的内容,又因为不需要换行,所以在视觉上就会有一直在往前输出的感觉。
linux在命令行下也能产生不同颜色的背景和字体,只需要加上一些颜色代码,例如
echo -e "\033[44;31m 蓝底红字\033[0m"

shell彩色进度条

\033[ ; m …… \033[0m是对颜色调用的始末,44的位置代表底色, 31的位置是代表字的颜色
文字颜色范围:30----39
30:黑色 31:红色 32:绿色 33:黄色 34:蓝色 35:紫色 36:深绿 37:白色
文字背景颜色范围:40----49
40:黑色 41:红色 42:绿色 43:黄色 44:蓝色 45:紫色 46:深绿 37:白色
 
\33[30m -- \33[37m 设置前景色
\33[40m -- \33[47m 设置背景色
\33[2J 清屏
\33[K 清除从光标到行尾的内容
\33[?25l 隐藏光标
\33[?25h 显示光标

进度条代码:                                                                                                                              

shell彩色进度条

shell彩色进度条