[golang]golang如何覆盖输出console,实现进度条;golang一个骚气的进度提示库

 

[golang]golang如何覆盖输出console,实现进度条

 

 

 

package main

import(
        "fmt"
        "os"
        "time"
)

func main(){
        for i :=0;i!=10;i=i+1{
                fmt.Fprintf(os.Stdout,"result is %d\r",i)
                time.Sleep(time.Second*1)
        }
        fmt.Println("Over")
}

 golang一个骚气的进度提示库

spinner is a simple package to add a spinner / progress indicator to any terminal application. Examples can be found below as well as full examples in the examples directory.

For more detail about the library and its features, reference your local godoc once installed.

Contributions welcome!

安装

go get -u -v github.com/briandowns/spinner

下面是效果图

(Numbered by their slice index)

indexcharacter setsample gif
0←↖↑↗→↘↓↙Sample Gif
1▁▃▄▅▆▇█▇▆▅▄▃▁Sample Gif
2▖▘▝▗Sample Gif
3┤┘┴└├┌┬┐Sample Gif
4◢◣◤◥Sample Gif
5◰◳◲◱Sample Gif
6◴◷◶◵Sample Gif
7◐◓◑◒Sample Gif
8.oO@*Sample Gif
9```/-```
10◡◡⊙⊙◠◠Sample Gif
11⣾⣽⣻⢿⡿⣟⣯⣷Sample Gif
12>))'> >))'> >))'> >))'> >))'> <'((< <'((< <'((<Sample Gif
13⠁⠂⠄⡀⢀⠠⠐⠈Sample Gif
14⠋⠙⠹⠸⠼⠴⠦⠧⠇⠏Sample Gif
15abcdefghijklmnopqrstuvwxyzSample Gif
16▉▊▋▌▍▎▏▎▍▌▋▊▉Sample Gif
17■□▪▫Sample Gif
18←↑→↓Sample Gif
19╫╪Sample Gif
20⇐⇖⇑⇗⇒⇘⇓⇙Sample Gif
21⠁⠁⠉⠙⠚⠒⠂⠂⠒⠲⠴⠤⠄⠄⠤⠠⠠⠤⠦⠖⠒⠐⠐⠒⠓⠋⠉⠈⠈Sample Gif
22⠈⠉⠋⠓⠒⠐⠐⠒⠖⠦⠤⠠⠠⠤⠦⠖⠒⠐⠐⠒⠓⠋⠉⠈Sample Gif
23⠁⠉⠙⠚⠒⠂⠂⠒⠲⠴⠤⠄⠄⠤⠴⠲⠒⠂⠂⠒⠚⠙⠉⠁Sample Gif
24⠋⠙⠚⠒⠂⠂⠒⠲⠴⠦⠖⠒⠐⠐⠒⠓⠋Sample Gif
25ヲァィゥェォャュョッアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワンSample Gif
26. .. ...Sample Gif
27▁▂▃▄▅▆▇█▉▊▋▌▍▎▏▏▎▍▌▋▊▉█▇▆▅▄▃▂▁Sample Gif
28.oO°Oo.Sample Gif
29+xSample Gif
30v<^>Sample Gif
31>>---> >>---> >>---> >>---> >>---> <---<< <---<< <---<< <---<< <---<<Sample Gif
32``` 
33[] [=] [==] [===] [====] [=====] [======] [=======] [========] [=========] [==========]Sample Gif
34(*---------) (-*--------) (--*-------) (---*------) (----*-----) (-----*----) (------*---) (-------*--) (--------*-) (---------*)Sample Gif
35█▒▒▒▒▒▒▒▒▒ ███▒▒▒▒▒▒▒ █████▒▒▒▒▒ ███████▒▒▒ ██████████Sample Gif
36[ ] [=> ] [===> ] [=====> ] [======> ] [========> ] [==========> ] [============> ] [==============> ] [================> ] [==================> ] [===================>]Sample Gif
37? ? ? ? ? ? ? ? ? ? ? ?Sample Gif
38? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Sample Gif
39? ? ?Sample Gif
40◜ ◝ ◞ ◟Sample Gif
41⬒ ⬔ ⬓ ⬕Sample Gif
42⬖ ⬘ ⬗ ⬙Sample Gif
43[>>> >] []>>>> [] [] >>>> [] [] >>>> [] [] >>>> [] [] >>>>[] [>> >>]Sample Gif

示例

package main

import (
    "github.com/briandowns/spinner"
    "time"
)

func main() {
    s := spinner.New(spinner.CharSets[9], 100*time.Millisecond)  // Build our new spinner
    s.Start()                                                    // Start the spinner
    time.Sleep(4 * time.Second)                                  // Run for some time to simulate work
    s.Stop()
}

更多内容请看github

https://github.com/briandowns/spinner

 







转载于:https://www.cnblogs.com/landv/p/11543342.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值