我为我开发的python应用程序构建了一个进度条。预期如下所示:
[██████████████ ] 70%
在本地终端和由我的机器构建的docker容器中运行时,此方法工作正常。但是,在gitlab共享运行程序中运行时,它未按预期显示。它没有显示到目前为止的进度,而是显示多行。像下面这样
[█████████████ ] 68%
[█████████████ ] 68%
[█████████████ ] 68%
[█████████████ ] 68%
[█████████████ ] 69%
[█████████████ ] 69%
[█████████████ ] 69%
[█████████████ ] 69%
[█████████████ ] 69%
[██████████████ ] 70%
[██████████████ ] 70%
为了理解可能的原因,我试图找出共享运行容器的终端属性。因此,我执行了以下命令,所有命令均返回错误。因此需要帮助解决问题。
$ stty size
stty: 'standard input': Inappropriate ioctl for device
$ tput cols
tput: No value for $TERM and no -T specified
我的gitlab-ci.yml文件如下所示
run-project:
image: python:3.6
script:
- stty size
- python3 Test.py
以下是我用来显示进度条的示例代码:
import sys
i = 1
sys.stdout.write('Start')
for k in range(100000):
i += 1
sys.stdout.write('\r')
j = (i/100000)
sys.stdout.write("[%-20s] %d%%" % ('█'*int(20*j), int(100*j)))
我想看到的是显示任务进度的一行,而不是终端显示到目前为止显示进度的数百行(这是我使用回车符的目的)
答案 0 :(得分:0)
现在在gitlab中已解决,回车符也可以工作!
任务状态:
[████████████████████] 100%