Golang flag package notes - 2019-05-01 16:32:44

原文 https://github.com/parsiya/Hacking-with-Go/blob/master/content/03.1.md flag包基本使用 flag 提供命令参数处理功能 可以声明类型有 string int bool 例如 ipPtr := flag.String("ip", "127.0.0.1", "target IP") 如下 Flag 类型是 String ipPtr 指向Flag值的指针 ip Flag的名字 127.0.0.1: Flag 默认名字 target IP: Flag 描述 -h 时显示 也可以直接传递指针 var port int flag.IntVar(&port, "port", 8080, "Port") // 03.1-01-flag1.go package main import ( "flag" "fmt" ) func main() { // Declare flags // Remember, flag methods return pointers ipPtr := flag.String("ip", "127.

使用 GB 构建 Go project - 2019-05-01 16:32:44

GB 介绍 Site: https://getgb.io/ Github: https://github.com/constabulary/gb 官网首页介绍 A project based build tool for the Go programming language. 所以gb 是一个构建工具,依赖管理插件完成的 gb-vendor doc 为什么用gb,最喜欢的一点是 Project based workflow 基于 project bashd,而不是 GOPATH based 项目不需要必须在 GOPATH 下 项目结构 两个重要的目录 $PROJECT/src/ 我们自己的业务代码 $PROJECT/vendor/src/ 第三方的依赖在这 比如 一个 名字叫 redeem 的项目, 项目结构 . ├── README.md ├── bin │ └── redeem ├── src │ └── redeem │ └── main.go └── vendor ├── manifest └── src ├── github.