flag

在写的一个项目中涉及到time.Duration的参数,不清楚如何命令上传此类型的参数,于是需求变为将int转为time.Duration

实现如下

package main

import (
    "flag"
    "fmt"
    "time"
)

func main() {
    interval := flag.Int("interval", 10, "The interval of producer to create message")
    flag.Parse()
    fmt.Println(interval)
    fmt.Println(*interval)
    t := time.Duration(*interval) * time.Second
    fmt.Println(t)
    time.Sleep(t)
}

命令行调用

$ go run test.go -interval 1
0xc000096008
1
1s

 

posted @ 2020-05-25 17:31  西橙  阅读(322)  评论(0编辑  收藏  举报