在工作中,经常需要查看一些应用程序的版本,使用-v
、--vserion
等参数查看一个应用的版本,比如:
# node -v
v16.13.1
# go version
go version
go version go1.12.9 linux/amd64
那通过go build
构成后生成的可执行文件,如果获取它的版本呢?
你是否会想到,直接在代码中写死版本?当然可以,但是太麻烦了,发布版本前需要在代码中修改版本。
一般在发布应用程序时,都需要先go build
,那么可以通过-ldflags
参数来注入版本到应用程序中。