27 lines
511 B
Go
27 lines
511 B
Go
|
package main
|
||
|
|
||
|
import (
|
||
|
"fmt"
|
||
|
"time"
|
||
|
|
||
|
"github.com/gosuri/uilive"
|
||
|
)
|
||
|
|
||
|
func main() {
|
||
|
writer := uilive.New()
|
||
|
|
||
|
// start listening for updates and render
|
||
|
writer.Start()
|
||
|
|
||
|
for _, f := range []string{"Foo.zip", "Bar.iso"} {
|
||
|
for i := 0; i <= 50; i++ {
|
||
|
fmt.Fprintf(writer, "Downloading %s.. (%d/%d) GB\n", f, i, 50)
|
||
|
time.Sleep(time.Millisecond * 25)
|
||
|
}
|
||
|
fmt.Fprintf(writer.Bypass(), "Downloaded %s\n", f)
|
||
|
}
|
||
|
|
||
|
fmt.Fprintln(writer, "Finished: Downloaded 100GB")
|
||
|
writer.Stop() // flush and stop rendering
|
||
|
}
|