File 是不是&引用;是指所有子文件夹吗?
我经常在makefile中看到“/…”。我想这意味着它是当前目录中的所有子文件夹。有人能确认一下并提供解释这个语法的来源吗 例如:File 是不是&引用;是指所有子文件夹吗?,file,go,File,Go,我经常在makefile中看到“/…”。我想这意味着它是当前目录中的所有子文件夹。有人能确认一下并提供解释这个语法的来源吗 例如: go generate ./... 导入路径模式/…匹配当前目录下目录中的所有包,但供应商目录中的包除外 模式由go工具实现。make、bash和任何其他可能调用go工具的工具都不会解释该模式 委员会: 如果导入路径包含一个或多个“…”通配符,则导入路径是一种模式,每个通配符都可以匹配任何字符串,包括空字符串和包含斜杠的字符串。这样的模式扩展到GOPATH树中所有
go generate ./...
导入路径模式
/…
匹配当前目录下目录中的所有包,但供应商目录中的包除外
模式由go
工具实现。make、bash和任何其他可能调用go
工具的工具都不会解释该模式
委员会:
如果导入路径包含一个或多个“…”通配符,则导入路径是一种模式,每个通配符都可以匹配任何字符串,包括空字符串和包含斜杠的字符串。这样的模式扩展到GOPATH树中所有名称与模式匹配的包目录
为了使普通模式更方便,有两种特殊情况。首先,/。。。在模式的末尾可以匹配一个空字符串,这样net/。。。匹配net及其子目录中的包,如net/http。其次,任何包含通配符的斜杠分隔模式元素都不会参与供应商包路径中“vendor”元素的匹配,因此。/。。。与./vendor或./mycode/vendor的子目录中的包不匹配,但与./vendor/。。。和./mycode/vendor/。。。做但是,请注意,本身包含代码的名为vendor的目录不是vendor包:cmd/vendor将是名为vendor的命令,模式cmd/。。。与之匹配。有关供应商的更多信息,请参见golang.org/s/go15vendor
它:
以./或../开头的导入路径称为相对路径。工具链以两种方式支持相对导入路径作为快捷方式
首先,相对路径可以用作命令行上的简写。如果您在包含作为“unicode”导入的代码的目录中工作,并且希望运行“unicode/utf8”的测试,则可以键入“go test./utf8”,而无需指定完整路径。类似地,在相反的情况下,“go test..”将从“unicode/utf8”目录测试“unicode”。还允许使用相对模式,如“go test./…”来测试所有子目录。有关模式语法的详细信息,请参阅“go help packages”
其次,如果您正在编译一个不在工作空间中的Go程序,则可以在该程序的import语句中使用相对路径来引用附近也不在工作空间中的代码。这使得在通常的工作空间之外试验小型多包程序变得很容易,但是这种程序不能用“go install”安装(没有安装它们的工作空间),因此每次构建它们时都会从头开始重新构建。为避免歧义,Go程序不能在工作空间内使用相对导入路径
导入路径模式
/…
匹配当前目录下目录中的所有包,但供应商目录中的包除外
模式由go
工具实现。make、bash和任何其他可能调用go
工具的工具都不会解释该模式
委员会:
如果导入路径包含一个或多个“…”通配符,则导入路径是一种模式,每个通配符都可以匹配任何字符串,包括空字符串和包含斜杠的字符串。这样的模式扩展到GOPATH树中所有名称与模式匹配的包目录
为了使普通模式更方便,有两种特殊情况。首先,/。。。在模式的末尾可以匹配一个空字符串,这样net/。。。匹配net及其子目录中的包,如net/http。其次,任何包含通配符的斜杠分隔模式元素都不会参与供应商包路径中“vendor”元素的匹配,因此。/。。。与./vendor或./mycode/vendor的子目录中的包不匹配,但与./vendor/。。。和./mycode/vendor/。。。做但是,请注意,本身包含代码的名为vendor的目录不是vendor包:cmd/vendor将是名为vendor的命令,模式cmd/。。。与之匹配。有关供应商的更多信息,请参见golang.org/s/go15vendor
它:
以./或../开头的导入路径称为相对路径。工具链以两种方式支持相对导入路径作为快捷方式
首先,相对路径可以用作命令行上的简写。如果您在包含作为“unicode”导入的代码的目录中工作,并且希望运行“unicode/utf8”的测试,则可以键入“go test./utf8”,而无需指定完整路径。类似地,在相反的情况下,“go test..”将从“unicode/utf8”目录测试“unicode”。还允许使用相对模式,如“go test./…”来测试所有子目录。有关模式语法的详细信息,请参阅“go help packages”
其次,如果您正在编译一个不在工作空间中的Go程序,则可以在该程序的import语句中使用相对路径来引用附近也不在工作空间中的代码。这使得在通常的工作空间之外试验小型多包程序变得很容易,但是这种程序不能用“go install”安装(没有安装它们的工作空间),因此每次构建它们时都会从头开始重新构建。为避免歧义,Go程序不能在工作空间内使用相对导入路径
你能用
/…
向我提供makefile的源代码吗?Makefiles不是bash--不同的语言,不同的语法,不同的标记。你能用/…
向我提供makefile的源代码吗?Makefiles不是bash--不同的语言,不同的语法,不同的标记。@SteveHe,我要强调的是,go-build
和go-install
(和go-test
)调用在go包而不是文件上工作(与go-run
相反)。因此,特殊的构造{path}/..
意味着“所有包”