【go笔记】使用标准库flag解析命令行参数
前言
Go语言标准库中提供了一个包flag
可以解析命令行参数。
示例代码:文件读取
package main
import (
"fmt"
"flag"
"io/ioutil"
)
func main() {
// 文件路径由字符串指定,因此调用了
ptrFlagFpath := flag.String("fpath","hello.txt","-fpath 指定待读取文件的路径")
flag.Parse()
content,err := ioutil.ReadFile(*ptrFlagFpath)
if err != nil {
fmt.Println("read file fail:",err)
return
}
// 读取到的文件字节需要手动进行类型转换
fmt.Println(string(content))
}
- 文件路径由字符串指定,因此调用了
flag.String
(其它类型还有flag.Int
、flag.Bool
) - 可以使用
--help
或-help
查看帮助。如:go run main.go --help
- 第一个参数:命令行标识符
fpath
,使用时用-fpath
- 第二个参数:命令行参数
fpath
的默认值,此处为hello.txt
- 第三个参数:命令行参数标识符
fpath
的提示信息 - 定义好命令行参数后需要通过
flag.Parse()
来对命令行参数进行解析
参考文章
本文来自博客园,作者:花酒锄作田,转载请注明原文链接:https://www.cnblogs.com/XY-Heruo/p/15680814.html