Go 바이너리 컴파일, 실행 및 실행 행 명령
3532 단어 Go 개발
시스템 실행
go build (-x )
섞어서 편집하다
# linux windows , :
$gox -os "windows linux" -arch amd64
1. window 64 :
gox -osarch="windows/amd64" ./
2. mac 64 :
gox -osarch = "darwin/amd64" ./
3. Linux 64 :
gox -osarch="linux/amd64" ./
실행 명령 패키지
: go ,a.go,b.go,c.go, main a.go , go run a.go, undefined 12
:go run , a.go ,
( go build , )123
:go run a.go b.go c.go
(중점) 사용자 정의 상호작용 명령
1. 로드된 프로파일 지정
./main -c
2. 버전 번호 가져오기 - v
[root@hu mq]# ./mqbeat_linux_amd64 -v
1.0.0
main.go 코드는 다음과 같습니다
if util.SliceContainString(os.Args, "-v") {
fmt.Printf("%v
", config.Version)
os.Exit(0)
}
os.Args
E:\Workplace_Go\src\GoModTest>go run main.go -v 200
[C:\Users\Admin\AppData\Local\Temp\go-build184099962\b001\exe\main.exe -v 200]
3. 도움말 정보 얻기 - h
[root@hu mq]# ./mqbeat_linux_amd64 -h
Usage of Websphere_MQbeat:
-E value
Configuration overwrite (default null)
-N Disable actual publishing for testing
-T test mode with console output
-c value
Configuration file, relative to path.config (default beat.yml)
-configtest
Test configuration and exit.
-cpuprofile string
Write cpu profile to file
-httpprof string
Start pprof http server
-memprofile string
Write memory profile to this file
-path.config value
Configuration path
-path.data value
Data path
-path.home value
Home path
-path.logs value
Logs path
-reload
reload config
-setup
Load the sample Kibana dashboards
-strict.perms
Strict permission checking on config files (default true)
-version
Print the version and exit
Informations:
Version= 1.0.0
BuildCommit=
BuildTime= 2019/06/26
GoVersion= 1.12.1
main.go 코드는 다음과 같습니다
if util.SliceContainString(os.Args, "-h") {
buf := bytes.NewBufferString("Usage of " + config.AppName + ":
")
flag.CommandLine.SetOutput(buf)
flag.PrintDefaults()
fmt.Printf("%v", buf.String())
fmt.Println("Informations:")
fmt.Printf(" Version= %v
", config.Version)
fmt.Printf(" BuildCommit= %v
", config.BuildCommit)
fmt.Printf(" BuildTime= %v
", config.BuildTime)
fmt.Printf(" GoVersion= %v
", config.GoVersion)
os.Exit(0)
}
config.go 코드는 다음과 같습니다
var (
AppName = "MQbeat"
Version = "1.0.0"
)
대화식 명령줄 매개변수 Flag:
go 표준 라이브러리에 패키지 제공:flag, 명령행 해석 용이
1.flag.Parse ()main 함수체의 첫 줄에 넣기
var name string
flag.StringVar(&name, "name", "everyone", "The greeting object.")
flag.Parse()
fmt.Println(name)
flag.BoolVar(&h, "h", false, "this help")
flag.BoolVar(&v, "v", false, "show version and exit")
flag.Int、flag.Bool、flag.String 。
:
&name: , name。
arg , , 。
arg , , 。
arg , -arg , -help。
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Go 바이너리 컴파일, 실행 및 실행 행 명령설치 패키지 생성 시스템 실행 섞어서 편집하다 실행 명령 패키지 linux(./main 컴파일된 파일은 채집할 수 있습니다./main & 백엔드 실행) Windows(main.exe GoModTest.exe -nam...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.