简单使用
Demo
package main
import (
"flag"
"fmt"
"gitee.com/liumou_site/glbm"
)
var (
server string
port int
passwd string
net string
next bool
home string
)
func main() {
_, _, _, user_dir := glbm.GetUserInfo(false)
flag.StringVar(&server, "ip", "10.18.26.1", "设置服务器IP地址")
flag.IntVar(&port, "port", 80, "设置服务器端口")
flag.StringVar(&passwd, "pd", "Gxxc@123", "设置系统密码")
flag.StringVar(&net, "n", "w", "设置网络环境(w/z)")
flag.BoolVar(&next, "next", false, "是否显示步骤进行手动确认")
flag.StringVar(&home, "home", user_dir, "设置用户主目录")
flag.Parse()
fmt.Println(server)
fmt.Println(port)
fmt.Println(next)
}
效果
PS D:\DATA\git\GoLang\GoToinstall> go run .\main.go -h
Usage of C:\Users\Y\AppData\Local\Temp\go-build771855411\b001\exe\main.exe:
-home string
设置用户主目录 (default "C:\\Users\\Y")
-ip string
设置服务器IP地址 (default "10.18.26.1")
-n string
设置网络环境(w/z) (default "w")
-next
是否显示步骤进行手动确认
-pd string
设置系统密码 (default "Gxxc@123")
-port int
设置服务器端口 (default 80)
PS D:\DATA\git\GoLang\GoToinstall>
PS D:\DATA\git\GoLang\GoToinstall> go run .\main.go -next
10.18.26.1
80
true
设置程序名称
Demo
package main
import (
"flag"
"fmt"
"os"
"runtime"
"gitee.com/liumou_site/glbm"
"gitee.com/liumou_site/gns"
"gitee.com/liumou_site/logger"
)
var (
server string //服务器地址
port int // 服务端口
passwd string // 系统密码
net string // 网络类型w/z
next bool // 是否手动确认下一步
home string // 用户主目录
browser bool // 是否打开浏览器
)
func main() {
_, _, _, user_dir := glbm.GetUserInfo(false)
gf := flag.NewFlagSet("i", flag.ExitOnError)
gf.StringVar(&server, "ip", "10.18.26.1", "设置服务器IP地址")
gf.IntVar(&port, "port", 80, "设置服务器端口")
gf.StringVar(&passwd, "pd", "123", "设置系统密码")
gf.StringVar(&net, "n", "w", "设置网络环境(w/z)")
gf.BoolVar(&next, "next", false, "显示步骤进行手动确认")
gf.StringVar(&home, "home", user_dir, "设置用户主目录")
gf.BoolVar(&browser, "b", false, "自动打开网页")
args := os.Args
gf.Parse(args[1:])
// gf.Parse()
// fmt.Println(args)
// if len(args) == 0 {
// gf.Usage()
// return
// }
fmt.Println(server)
fmt.Println(port)
fmt.Println(next)
logger.Debug("当前架构", runtime.GOARCH)
logger.Debug("当前系统", runtime.GOOS)
net_check := gns.GnsConfig()
gns.Version()
net_status := net_check.PingStatus(server)
if net_status {
logger.Info("服务器连接正常")
} else {
logger.Error("服务器连接异常: ", server)
// os.Exit(1)
}
}
效果
liumou@liumou-PC:/media/liumou/Software/DATA/git/GoLang/GoToinstall$ go run main.go -h
Usage of i:
-b 自动打开网页
-home string
设置用户主目录 (default "/home/liumou")
-ip string
设置服务器IP地址 (default "10.18.26.1")
-n string
设置网络环境(w/z) (default "w")
-next
显示步骤进行手动确认
-pd string
设置系统密码 (default "Gxxc@123")
-port int
设置服务器端口 (default 80)