shell脚本编写进度条

在之前,我们介绍过在Linux中用C语言编写简易进度条。
http://blog.****.net/qq_34021920/article/details/69787648
今天我们来看看用shell脚本该如何编写。
首先,同样的创建一个后缀为.sh的文件,然后vim+文件名,进入文件开始编写代码
直接上shell脚本的进度条代码
shell脚本编写进度条

保存退出后,就要执行了
执行脚本的方法有好几种,在这里介绍我常用的一种:(bar.sh是我进度条代码的文件名)
chmod u+x bar.sh
改变该文件的权限,之后直接./bar.sh
Shell会fork一个子进程并调用exec执行./bar.sh这个程序,exec系统调用应该把子进程的代码段替换成./bar.sh程序的代码段,并从它的_start开始执⾏行。然而bar.sh是个文本文件,根本没有代码段和_start函数,怎么办呢?其实exec还有另外一种机制,如果要执行的是一个文本文件,并且第一行用Shebang 指定了解释器,则用解释器程序的代码段替换当前进程,并且从解释器的_start开始执行,而这个文本文件被当作命令行参数传给解释器。因此,执行上述脚本相当于执行程序 。

接下来来看看执行结果:
shell脚本编写进度条

这次进度条的背景是蓝色的,这是由于在编写代码的时候,在printf输出语句中加入了改变配色方案的代码
读者可以自行搜索改变配色。