06-Go语言命令行参数

GO命令行操作指令

  • 标准go语言项目文件目录格式
    • 项目文件夹就是GOPATH指向的文件夹
    • src文件夹是专门用于存放源码文件的
      • main文件夹是专门用于存储package main包相关源码文件的
      • 其它文件夹是专门用于存储除package main包以外源码文件的
    • bin文件夹是专门用于存储编译之后的可执行程序的
    • pkg文件夹是专门用于存储编译之后的.a文件的

|---项目文件夹
-----------|--------src文件夹
-----------------------------|--------main文件夹
-----------------------------|--------其它文件夹
-----------|--------bin文件夹
-----------|--------pkg文件夹

  • go version 查看当前安装的go版本

  • go env 查看当前go的环境变量

  • go fmt 格式化代码 在golang中可以使用Ctrl + ALT + L

    • 会将指定文件中凌乱的代码按照go语言规范格式化
  • go run 命令文件 编译并运行go程序

  • package main包中包含main函数的文件, 我们称之为命令文件
    -其它包中的文件, 我们称之为源码文件

  • go build 编译检查

    • 对于非命令文件只会执行编译检查, 不会产生任何文件
    • 对于命令文件除了编译检查外,还会在当前目录下生成一个可执行文件
    • 对应只想编译某个文件, 可以在命令后面指定文件名称go build 文件名称
  • go install 安装程序

    • 对于非命令文件会执行编译检查, 并生成.a结尾的包, 放到 $GOPATH/pkg目录中
    • 对于命令文件会执行编译检查, 并生成可执行程序, 放到$GOPATH/bin目录中

通过flag包获取命令行参数

package main

import (
    "flag"
    "fmt"
)

func main() {
    /*// 注册命令行参数
    //func String(name string, value string, usage string) *string
    var name *string = flag.String("name", "默认名称", "接收用户输入的名称")
    var age *string = flag.String("age", "-1", "接收用户输入的年龄")

    // 将编写好的参数注册到命令行
    flag.Parse()

    // 获取接收到的数据
    fmt.Println(*name)
    fmt.Println(*age)*/

    var name string
    // func StringVar(p *string, name string, value string, usage string)
    flag.StringVar(&name, "name", "默认姓名", "接收名字")
    var age int
    //func IntVar(p *int, name string, value int, usage string)
    flag.IntVar(&age, "age", -1, "接收年龄")
    flag.Parse()
    // 输入 -name=cww -age=14
    fmt.Println(name)
    fmt.Println(age)

}

你可能感兴趣的:(06-Go语言命令行参数)