在shell中实现进度条:
最近一直在部署各种环境,看着各位大大的安装界面的进度条都好酷炫,在网上找了一下,大概在这里记录一下
这里是ICEWAY分享的部分,加了一点注释,便于自己理解
#include <stdio.h>
#include <unistd.h>
#include <string.h>
int main()
{
char str[128] = "#";
int i;
for (i = 0; i < 100; i += 2) {
fprintf(stdout, "progress:[%-50s]%d%%\r", str, i+2);//输出一共50个#
fflush(stdout);//清空输入缓存区
strcat(str, "#");//加一个#
usleep(100000);
}
fprintf(stdout, "\n");
return 0;
}
还有一个shell版本的
#!/bin/sh
b=''
for ((i=0;$i<=100;i+=2))
do
printf "progress:[%-50s]%d%%\r" $b $i
sleep 0.1
b=#$b
done
echo
本文介绍如何使用Shell脚本和C语言实现一个简单的进度条效果,包括两种不同的实现方式:一种是通过C语言实现,另一种是纯Shell脚本实现。
7648





