回到简体

This commit is contained in:
chai2010
2016-02-15 11:06:34 +08:00
parent 9e878f9944
commit 2b37b23285
177 changed files with 2354 additions and 2354 deletions

View File

@@ -1,13 +1,13 @@
### 10.7.6. 査詢
### 10.7.6. 查询
`go list`命令可以査詢可用包的信息。其最簡單的形式,可以測試包是否在工作區併打印它的入路
`go list`命令可以查询可用包的信息。其最简单的形式,可以测试包是否在工作区并打印它的入路
```
$ go list github.com/go-sql-driver/mysql
github.com/go-sql-driver/mysql
```
`go list`命令的參數還可以用`"..."`表示匹配任意的包的入路。我可以用它列表工作中的所有包:
`go list`命令的参数还可以用`"..."`表示匹配任意的包的入路。我可以用它列表工作中的所有包:
```
$ go list ...
@@ -20,7 +20,7 @@ cmd/api
...many more...
```
或者是特定子目下的所有包:
或者是特定子目下的所有包:
```
$ go list gopl.io/ch3/...
@@ -33,7 +33,7 @@ gopl.io/ch3/printints
gopl.io/ch3/surface
```
或者是和某個主題相關的所有包:
或者是和某个主题相关的所有包:
```
$ go list ...xml...
@@ -41,7 +41,7 @@ encoding/xml
gopl.io/ch7/xmlselect
```
`go list`命令可以取每包完整的元信息,而不僅僅隻是導入路徑,這些元信息可以以不同格式提供給用戶。其中`-json`命令行參數表示用JSON格式打印每包的元信息。
`go list`命令可以取每包完整的元信息,而不仅仅只是导入路径,这些元信息可以以不同格式提供给用户。其中`-json`命令行参数表示用JSON格式打印每包的元信息。
```
$ go list -json hash
@@ -71,7 +71,7 @@ $ go list -json hash
}
```
命令行參數`-f`則允許用戶使用text/template包§4.6)的模闆語言定義輸出文本的格式。下面的命令打印strconv包的依的包,然用join模闆函數將結果鏈接爲一行,連接時每個結果之用一空格分隔:
命令行参数`-f`则允许用户使用text/template包§4.6)的模板语言定义输出文本的格式。下面的命令打印strconv包的依的包,然用join模板函数将结果链接为一行,连接时每个结果之用一空格分隔:
{% raw %}
```
@@ -80,7 +80,7 @@ errors math runtime unicode/utf8 unsafe
```
{% endraw %}
譯註上面的命令在Windows的命令行運行會遇到`template: main:1: unclosed action`錯誤。産生這個錯誤的原因是因命令行命令中的`" "`參數進行了轉義處理。可以按照下面的方法解決轉義字符串的問題
译注上面的命令在Windows的命令行运行会遇到`template: main:1: unclosed action`错误。产生这个错误的原因是因命令行命令中的`" "`参数进行了转义处理。可以按照下面的方法解决转义字符串的问题
{% raw %}
```
@@ -88,7 +88,7 @@ $ go list -f "{{join .Deps \" \"}}" strconv
```
{% endraw %}
下面的命令打印compress子目下所有包的依包列表:
下面的命令打印compress子目下所有包的依包列表:
{% raw %}
```
@@ -101,7 +101,7 @@ compress/zlib -> bufio compress/flate errors fmt hash hash/adler32 io
```
{% endraw %}
譯註Windows下有同樣有問題,要避免轉義字符串的榦擾
译注Windows下有同样有问题,要避免转义字符串的干扰
{% raw %}
```
@@ -109,8 +109,8 @@ $ go list -f "{{.ImportPath}} -> {{join .Imports \" \"}}" compress/...
```
{% endraw %}
`go list`命令對於一次性的交互式査詢或自動化構建或測試腳本都很有助。我們將在11.2.4中再次使用它。每子命令的更多信息,包括可置的字段和意,可以用`go help list`命令看。
`go list`命令对于一次性的交互式查询或自动化构建或测试脚本都很有助。我们将在11.2.4中再次使用它。每子命令的更多信息,包括可置的字段和意,可以用`go help list`命令看。
在本章,我們解釋了Go言工具中除了測試命令之外的所有重要的子命令。在下一章,我們將看到如何用`go test`命令去行Go言程序中的測試代碼
在本章,我们解释了Go言工具中除了测试命令之外的所有重要的子命令。在下一章,我们将看到如何用`go test`命令去行Go言程序中的测试代码
**練習 10.4** 建一工具,根命令行指定的參數,報告工作所有依指定包的其它包集合。提示:你需要`go list`命令次,一次用初始化包,一次用所有包。你可能需要用encoding/json§4.5)包分析出的JSON格式的信息。
**练习 10.4** 建一工具,根命令行指定的参数,报告工作所有依指定包的其它包集合。提示:你需要`go list`命令次,一次用初始化包,一次用所有包。你可能需要用encoding/json§4.5)包分析出的JSON格式的信息。