linux进度条脚本,Linux下简易进度条的实现代码

在生活中,进度条是很常见的,那么,进度条是如何实现的呢?

首先,进度条的动态是利用人眼视觉暂留效果的。实际上是如下过程:

先输出:[=     ]表示进度是1%,刷新之后

再输出:[==    ]......由于刷新的很快,所以看起来像是等号不断向后增加,直到进度完成。

在写这个程序之前我们需要了解一下的知识:

1、缓冲区

缓冲区分为无缓冲、行缓冲、全缓冲。

无缓冲:表示的是没有缓冲,可以将信息立马显现出来,典型代表是标准错误流stderr。

行缓冲:表示的是输入输出遇到换行才执行真正的I/O操作。典型的代表是键盘的操作。

全缓冲:表示的是输入输出写满缓冲区才执行I/O操作。典型的代表是磁盘的读写。

2、回车换行

回车用'r'表示,表示的是回到这行的起始位置。换行用‘n'表示,表示的是换行到下一行。

在C语言中,刷新缓冲区的函数是fflush函数,强制刷新缓冲区。实现这个进度条应使用的是无缓冲,实时的将进度条的变化显现出来。在这里,不需要换行只需要回车。

程序代码如下:

7d69f87010c48e5ea48f1ce2f47a901d.gif

以上这篇Linux下简易进度条的实现代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/267282.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

省选之前的未完成的计划(截至到省选)

PLAN OF THE COMING HEOI good problems:-bzoj4823:[Cqoi2017]老C的方块 【*】-bzoj3171:[Tjoi2013]循环格 【*】-bzoj4200:[Noi2015]小园丁与老司机 【*】-bzoj1061:[Noi2008]志愿者招募 【*】-bzoj3600:没有人的算术 【*】-bzoj2806:[Ctsc2012]Cheat 【*】-bzoj2219:数论之神…

动手写的Python的HTML语法分析器(面向对象)

动手写的Python的HTML语法分析器(面向对象) 主要包括4个文件,util.py文件主要负责截取每个块。 rules.py文件定义两个类,超类Rule和分别对应的子类,子类定义了不同的划分块的要求,子类包换action函数,调用h…

Linux中mysql的卸载和重装,在Linux下面卸载与重新安装Postgresql

在Linux下面卸载与重新安装Postgresql1. 先把原来的postgresql安装包找出来,如果找不到就可以直接安装了。[roottestserver postgresql]# rpm -qa|grep postpostgresql-docs-8.0.3-1.1AXpostgresql-libs-8.0.3-1.1AXfreeradius-postgresql-1.0.1-3.RHEL4.1AXpostgre…

[原]Jenkins(二十) jenkins再出发之Error: Opening Robot Framework log failed

错误缘由:使用plugin [public robot framework test results] 生成的HTML文件都无法正常打开.解决方案:Connect on your jenkins url (http://[IP]:8080/) Click on administer Jenkins Click on consol jenkins Copy this into the field and execut…

【016】VS2010连接内置SQL数据库

参考:传智播客.Net培训.net视频教程 >> 【05】第五季 ADO.NET(1-30) 示例代码:sql_test.zip 首先建立一个 控制台 或者 WinForm 项目,然后进行下面的操作! 1. 在 项目 上面右键》添加》新建项 2. 接下…

linux终端机详解,Linux reset设定终端机的状态命令详解

名称: reset, tset使用方法: tset [-IQqrs] [-] [-e ch] [-i ch] [-k ch] [-m mapping] [terminal]使用说明:reset 其实和 tset 是一同个命令,它的用途是设定终端机的状态。一般而言,这个命令会自动的从环境变数、命令列或是其它的组态档决定目前终端机的…

json-server模拟后台接口

前言: 项目开发中,影响项目进程的常常是由于在前后端数据交互的开发流程中停滞,前端完成静态页面的开发后,后端迟迟未给到接口。而现在,我们就可以通过根据后端接口字段,建立一个REST风格的API接口&#xf…

为什么生产环境都是linux,关于生产环境linux系统中的wheel用户组

本文系统环境:CentOS Linux release 7.7.1908 (Core)一般来说,目前linux系统中的wheel组,默认情况是没有使用到的、如果要使用wheel组,让其有具体的作用,需要结合/etc/pam.d/su文件配置很多在Linux中为了更进一步加强系…

微信小程序----全局变量

全局变量的作用 在微信小程序开发中,会遇到一个很实际的应用场景,就是一个变量会在多个页面进行使用。 例如: 1. 在微信小程序开发中使用高德地图的微信小程序开发,其中key值就需要在多个页面使用; 2. 在微信小程序开…

目录同步 linux,Linux系统目录实时同步

1.当操作系统根分区空间不够时(有大量的日志写入或应用部署在根分区),可以将单个或多个目录进行同步出来,源目录是磁盘较大的分区,目标目录是在根分区下,实际文件写入在较大的分区。[rootmysql01 ~]# mkdir /home/123 /123 …

byte转化为Bitmap,防止内存溢出

Java代码 ByteArrayInputStream is new ByteArrayInputStream(byte[]); BitmapFactory.Options optionsnew BitmapFactory.Options(); options.inPurgeable true; options.inInputShareable true; options.inSampleSize 2; try …

Hadoop点滴-HDFS命令行接口

1、-help[cmd] 显示命令的帮助信息 ./hdfs dfs -help ls1 2、-ls(r) 显示当前目录下的所有文件 -R层层循出文件夹 ./hdfs dfs -ls /log/map ./hdfs dfs -lsr /log/ (递归的)1 3、-du(s) 显示目录中所有文件大小,或者当只指定一个文件时,显示此文件的大小 ./hdfs d…

linux centos-6.5,Linux(CentOS 6.5)安装 mysql

linux下安装软件的方式很多,这里是使用简单而方便的yum来安装一、使用yum 安装mysql服务,客户端1、检查是否已经安装: yum list installed | grep mysql2、 yum list installed | grep MYSQL3、查询结果:4、这是我已经安装的mysq…

amcharts应用

查看选中的软件的下载量,通过amchart报表工具显示出软件日下载量,月下载量以及年下载量,下面简单介绍,amchart在struts2中的应用。 amCharts提供JavaScript/HTML5图表。一套包括串行(列,栏,线&a…

两种常见挂载Jenkins slave节点的方法

1、挂载slave节点的方法 在Jenkins的Master上,进入Mange node页面,可以管理node节点,例如新加、删除等操作。 其中, Name是节点名字; Description是节点描述; // of executors是该节点可以同时运行job的数…

linux下makefile中cp,make与makefile 的理解

当我们写程序过程中存在多个文件之间有复杂的包含关系时,若修改了其中一个源文件,就重新编译所有文件,一般是不必要的,并且当文件很多时,就显得非常笨拙。所有包含该文件的文件需要重新编译,而其它无关系的…

spinlock与linux内核调度的关系

作者:刘洪涛,华清远见嵌入式学院高级讲师,ARM公司授权ATC讲师。 关于自旋锁用法介绍的文章,已经有很多,但有些细节的地方点的还不够透。我这里就把我个人认为大家容易有疑问的地方拿出来讨论一下。 一、自旋锁&#x…

Python参数类型

位置参数默认参数可变参数命名关键字参数关键字参数1 def position_only(a, b):2 print(a, b)3 4 def keyword(aa, bb):5 print(a, b)6 7 def arg(a, *args):8 print(a, args)9 10 def kw(a, **kwargs): 11 print(a, kwargs) 12 13 def many1(a, b, cc, *arg…

keil用c语言怎么编辑器,用keil软件编写单片机程序的步骤

猜你感兴趣:新手教程:单片机的学习实践步骤运用单片机便是了解单片机硬件结构,以及内部资源的运用,在汇编或C语言中学会各种功用的初始化设置,以及完成各种功用的程序编制。 运用按钮输入信号,发光二极管显…

24c语言程序设计是啥,《C语言程序设计》作业答案.docx

精心整理《 C 语言程序设计》作业答案1.第 4题以下程序的输出结果是______。main(){intn[3][3],i,j;精心整理for(i0;ifor(j0;jfor(i0;ifor(j0;j)n[i1][j1]n[i][j];printf("%d\n",n[i][j]);---来源网络,仅供分享学习2/145精心整理}A.14B.0C.6D.…