当前位置: 首页 > 面试题库 >

bash中的进度列

艾星河
2023-03-14
问题内容

我想在bash操作期间以特定格式显示类似于以下内容的进度条:

[###########](40%)

更新后,它应该成为

[###############](50%)

然后类似地达到 100%

有什么办法可以做到这一点

我编写了以下bash程序,但我不知道如何在同一行中显示百分比:

#!/bin/bash
{
    echo -n "["
    for ((i = 0 ; i <= 100 ; i+=6)); do
        sleep 0.05
        echo -n "###"
    done
    echo -n "]"
    echo
}

假设某个循环中正在执行一定数量的操作,并且在完成每个操作之后,我想报告一些进度。我不想安装pv或默认Ubuntu 12.04安装不附带的任何其他实用程序。


问题答案:

我们echo -n '...' $'\r'来打印回车符:

for ((k = 0; k <= 10 ; k++))
do
    echo -n "[ "
    for ((i = 0 ; i <= k; i++)); do echo -n "###"; done
    for ((j = i ; j <= 10 ; j++)); do echo -n "   "; done
    v=$((k * 10))
    echo -n " ] "
    echo -n "$v %" $'\r'
    sleep 0.05
done
echo

它使光标移动到行的开头以继续打印。

输出如下,始终在同一行:

[ ##################                ] 50 %

.../...

[ ################################# ] 100 %


 类似资料:
  • 如何获得存储在变量中的字符串长度并将其分配给另一个变量? 如何将另一个变量设置为输出?

  • 问题内容: 以下问题仅适用于bash和linux: 文件的绝对路径名中的字符数是否有限制? 仅文件名(无扩展名)的字符数有限制吗? 如果是这样,这些限制是什么?如果它们是系统特定的,我该如何访问它们? 问题答案: 这在很大程度上取决于文件系统。对于ext FS(当前在Linux上最常用): 文件名最大长度:255个字节 最大路径长度:无 FS不能识别该扩展名,它包含255个字节,包括扩展名(您可以

  • 我如何去除灰色背景,只在进度条中显示蓝色进度条。

  • 本文向大家介绍Android带进度的圆形进度条,包括了Android带进度的圆形进度条的使用技巧和注意事项,需要的朋友参考一下 我们还是用一个小例子来看看自定义View和自定义属性的使用,带大家来自己定义一个带进度的圆形进度条,我们还是先看一下效果吧 从上面可以看出,我们可以自定义圆环的颜色,圆环进度的颜色,是否显示进度的百分比,进度百分比的颜色,以及进度是实心还是空心等等,这样子是不是很多元化很

  • 问题内容: 我对cURL很陌生,所以我已经为这个问题苦苦挣扎了好几个小时。我正在尝试使用cURL在iframe中下载网站的源代码,并在加载时显示其中已加载了多少。到目前为止,我已经成功下载了源代码,但未显示加载进度。您能解释一下如何显示下载进度吗?如果没有cURL,我将逐字节读取文件,然后将下载的字节总数除以文件的总大小。由于cURL会整体读取源代码,因此该如何在cURL中完成?(至少我认为这是唯

  • 我想让水平进度条从0移动到100。我在布局中添加了这段代码。我应该怎么做才能移动这个进度条?