Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用ruby progressbar gem查看进度?_Ruby - Fatal编程技术网

如何使用ruby progressbar gem查看进度?

如何使用ruby progressbar gem查看进度?,ruby,Ruby,我正在编写一个ruby脚本,其中我正在运行多个其他脚本,这些脚本至少需要15-20分钟才能运行。现在,我在控制台上显示一个静态文本,告诉用户哪个进程正在运行,以及要完成的ETA是什么 我希望有一个进度条,这样用户就可以在屏幕上看到进度,而不是静态文本。下面是一段代码,我试图在另一个脚本运行时使用ruby progressbargem打印进度条 progressbar = ProgressBar.create t1 = Thread.new do other_script=syst

我正在编写一个ruby脚本,其中我正在运行多个其他脚本,这些脚本至少需要15-20分钟才能运行。现在,我在控制台上显示一个静态文本,告诉用户哪个进程正在运行,以及要完成的ETA是什么

我希望有一个进度条,这样用户就可以在屏幕上看到进度,而不是静态文本。下面是一段代码,我试图在另一个脚本运行时使用
ruby progressbar
gem打印进度条

progressbar = ProgressBar.create

t1 = Thread.new do
       other_script=system("sh run_me_first.sh")
end

 t2 = Thread.new do
        progressbar.increment
        sleep 1

        if other_script
           progressbar.stop
        end

 end

 t1.join
 t2.join
但它只是在打印以下内容。没有显示任何进展

   Run_me_first started (it will take approximately 20mins)...
Progress: |                                                                    |

你的
t2
没有循环-它会增加进度条一次,然后退出。@nnone不,谢谢,这很有效。但现在我看到了
警告:您的进度条当前为100分之100,无法增加。
错误。由于我没有
首先运行我
脚本所需的任何大小或大致时间,因此我不知道如何用更大的数字初始化
ProgressBar
对象。需要更多的指导。请作为一个新问题提问。