go标准命令详解0.4 go clean
2015-12-31 20:34
211 查看
搬运自github赫林的go_command_tutorial,绝对干货,感谢作者。
0.4 go clean
执行go clean命令会删除掉执行其它命令时产生的一些文件和目录,包括:
在使用
go build命令时在当前代码包下生成的与包名同名或者与Go源码文件同名的可执行文件。在Windows下,则是与包名同名或者Go源码文件同名且带有“.exe”后缀的文件。
在执行
go test命令并加入
-c标记时在当前代码包下生成的以包名加“.test”后缀为名的文件。在Windows下,则是以包名加“.test.exe”后缀为名的文件。我们会在后面专门介绍
go test命令。
如果执行
go clean命令时带有标记
-i,则会同时删除安装(执行
go install命令)当前代码包时所产生的结果文件。如果当前代码包中只包含库源码文件,则结果文件指的就是在工作区的pkg目录的相应目录下的归档文件。如果当前代码包中只包含一个命令源码文件,则结果文件指的就是在工作区的bin目录下的可执行文件。
还有一些目录和文件是在编译Go或C源码文件时留在相应目录中的。包括:“_obj”和“_test”目录,名称为“_testmain.go”、“test.out”、“build.out”或“a.out”的文件,名称以“.5”、“.6”、“.8”、“.a”、“.o”或“.so”为后缀的文件。这些目录和文件是在执行
go build命令时生成在临时目录中的。如果你忘记了这个临时目录是怎么回事儿,可以再回顾一下前面关于
go build命令的介绍。临时目录的名称以
go-build为前缀。
如果执行
go clean命令时带有标记
-r,则还包括当前代码包的所有依赖包的上述目录和文件。
我们再以goc2p项目的
logging为例。为了能够反复体现每个标记的作用,我们会使用标记
-n。使用标记
-n会让命令在执行过程中打印用到的系统命令,但不会真正执行它们。如果想既打印命令又执行命令则需使用标记
-x。现在我们来试用一下
go clean命令:
[code]hc@ubt:~/golang/goc2p/src$ go clean -x logging cd /home/hc/golang/goc2p/src/logging rm -f logging logging.exe logging.test logging.test.exe
现在,我们加上标记
-i:
[code]hc@ubt:~/golang/goc2p/src$ go clean -x -i logging cd /home/hc/golang/goc2p/src/logging rm -f logging logging.exe logging.test logging.test.exe rm -f /home/hc/golang/goc2p/pkg/linux_386/logging.a
如果再加上标记
-r又会打印出哪些命令呢?请读者自己试一试吧。
相关文章推荐
- go标准命令详解0.3 go get
- go标准命令详解0.2 go install
- Storm/Cassandra集成错误:NoSuchMethodError: com.google.common.util.concurrent.Futures.withFallback
- Codeforces goodbye 2015
- Codeforces Good Bye 2015 A. New Year and Days (水)
- Codeforces 611C. New Year and Domino (Good Bye 2015 C题)
- 【WIN10】Segoe MDL2 Assets
- GO语言练习ONE
- 嵌入式web server——Goahead启用SSL
- 【mongo】启动mongo
- django技巧
- Codeforces Good Bye 2015 ABCDE
- 另一种blast2go的思路
- cf good bye 2015
- Codeforces Good Bye 2015 C. New Year and Domino 前缀和
- 为智能硬件提供一站式解决方案——机智云GoKit评测
- 为智能硬件提供一站式解决方案——机智云GoKit评测
- 初学django1-django模型中自定义方法从身份证号码中获取出生日期
- golang语言中map的初始化及使用
- Django-CMS安装过程