在mac 的“终端.app”中,我有一个ruby脚本想让我的脚本输出的结果信息只在一行显示,同时在行尾显示“1%~100%”例如:
【##########】50% 请问有什么方法呢?我的脚本意思是删除某个目录中的所以文件。最主要的是怎么实现这个显示方式.谢谢
(1..100).each do |i|
printf "r%s", "[" + "#" i + "s" (100 - i) + "]" + "(#{i}/100)"
sleep1
end
$stdout.flush
方法1:python代码,翻译为ruby应该很简单吧。
import sys, time
def status(percent):
sys.stdout.write("%3d%%\r" % percent)
sys.stdout.flush()
for i in range(100):
status(i)
time.sleep(1)
方法2:
输出b可以删除前一个字符。
比如输出1b2b3
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。