从编译的二进制文件获取golang版本

时间:2016-06-05 10:21:17

标签: go

有没有办法从false或编译二进制文件中获取golang版本? 我想在我更改golang版本时自动删除pkg/文件夹。

2 个答案:

答案 0 :(得分:2)

没关系,找到了答案

[ `strings $pkg_a_file | grep 'go object' | head -n 1 | cut -f 5 -d ' '` != `go version | cut -f 3 -d ' '` ] && \     
rm -rf $GOPATH/pkg

strings $pkg_a_file | grep 'go object' | head -n 1 | cut -f 5 -d ' '部分将显示类似go1.6.2

的内容

pkg_a_file可以是这样的:

PKG_OS_ARCH=`go version | cut -d ' ' -f 4 | tr '/' '_'`
pkg_a_file=$GOPATH/pkg/$PKG_OS_ARCH/gitlab.com/kokizzu/gokil/A.a

外部参考:http://kokizzu.blogspot.co.id/2016/06/solution-for-golang-slow-compile.html

答案 1 :(得分:1)

使用1.9.2,grep命令是

strings $pkg_a_file | grep 'Go cmd/compile'