V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
imupdate
V2EX  ›  问与答

cmder 下使用 you-get 的进度条的困惑

  •  
  •   imupdate · 2017-02-10 22:53:16 +08:00 · 2826 次点击
    这是一个创建于 2844 天前的主题,其中的信息可能已经有所发展或是发生改变。
    在 cmder 下面,执行 you-get 。其进度条如下
    2.7% ( 28.8/1050.6MB) ├█────────────────────────────────────┤[ 1/28]
    2.8% ( 29.0/1050.6MB) ├█────────────────────────────────────┤[ 1/28]
    2.8% ( 29.2/1050.6MB) ├█────────────────────────────────────┤[ 1/28]
    2.8% ( 29.5/1050.6MB) ├█────────────────────────────────────┤[ 1/28]
    2.8% ( 29.8/1050.6MB) ├█────────────────────────────────────┤[ 1/28]
    2.9% ( 30.0/1050.6MB) ├█────────────────────────────────────┤[ 1/28]
    2.9% ( 30.2/1050.6MB) ├█────────────────────────────────────┤[ 1/28]
    2.9% ( 30.5/1050.6MB) ├█────────────────────────────────────┤[ 1/28]
    2.9% ( 30.8/1050.6MB) ├█────────────────────────────────────┤[ 1/28]
    3.0% ( 31.0/1050.6MB) ├██───────────────────────────────────┤[ 1/28]
    3.0% ( 31.2/1050.6MB) ├██───────────────────────────────────┤[ 1/28]
    直至 100%,而 linux 下面就是一条。何解?
    8 条回复    2017-02-11 12:23:55 +08:00
    author
        1
    author  
       2017-02-10 23:07:36 +08:00 via Android
    是回车符问题吗? Linux 下把终端调到宽度很小,估计也是很多条
    Kisesy
        2
    Kisesy  
       2017-02-10 23:24:59 +08:00
    应该是命令行缓冲区的问题
    如果想要实现单行更新,一般是直接写 stdout ,并且写的时候前面加转义符 \r,比如:
    sys.stdout.write('\r' + bar)
    这时候后面不要跟 sys.stdout.flush()
    不然就强制刷新了,这样就会产生多行了
    我看 you-get 的代码就写了 flush ,所以才会出现这种差异吧
    Kisesy
        3
    Kisesy  
       2017-02-10 23:32:50 +08:00
    唉,好像说错了,应该是可以加 sys.stdout.flush() 的,记错了。。。
    DiamondbacK
        4
    DiamondbacK  
       2017-02-10 23:35:41 +08:00
    cmder + you-get 0.4.626 ,没有遇到过这个问题。
    ovear
        5
    ovear  
       2017-02-11 00:40:29 +08:00   ❤️ 1
    解决方法是把对话框拉宽一点 =、=
    imupdate
        6
    imupdate  
    OP
       2017-02-11 08:13:08 +08:00
    @Kisesy 作为使用者,基本上做不了什么喽?
    xmoiduts
        7
    xmoiduts  
       2017-02-11 11:58:51 +08:00 via Android
    @ovear 实测有用
    imupdate
        8
    imupdate  
    OP
       2017-02-11 12:23:55 +08:00
    @xmoiduts 我试了,好像不行唉。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5615 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 07:07 · PVG 15:07 · LAX 23:07 · JFK 02:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.