是否可以使用go doc
查看特定包下定义的所有子包?
比如说,我想查看crypto
下的所有子包。
go doc crypto
只列出crypto
定义的内容,但没有列出有关其子包的信息,如crypto/aes
和crypto/cipher
:
go doc crypto
package crypto // import "crypto"
Package crypto collects common cryptographic constants.
func RegisterHash(h Hash, f func() hash.Hash)
type Decrypter interface{ ... }
type DecrypterOpts interface{}
type Hash uint
const MD4 Hash = 1 + iota ...
...
如果你想查看特定包下的所有子包,你可以使用go list
命令:
go list crypto/...
crypto
crypto/aes
crypto/cipher
crypto/des
crypto/dsa
crypto/ecdsa
crypto/ed25519
crypto/ed25519/internal/edwards25519
crypto/elliptic
crypto/hmac
crypto/internal/randutil
crypto/internal/subtle
crypto/md5
crypto/rand
crypto/rc4
crypto/rsa
crypto/sha1
crypto/sha256
crypto/sha512
crypto/subtle
crypto/tls
crypto/x509
crypto/x509/pkix
最后,对于每个包,您可以使用go doc
命令获取文档。
go doc crypto/x509
...
如果需要循环访问go list
返回的结果,可以编写脚本。
老实说,我认为使用 std 库文档的最佳方式是 Go 网站:https://golang.org/pkg/。
您还可以启动本地godoc
Web 服务器来读取 Go 代码的文档:
godoc -http=:6060
*open your browser and visit localhost:6060*