我目前正在查看这个项目(Mattermost),它在makefile中有一行我很困惑:
$(GO) run $(GOFLAGS) $(GO_LINKER_FLAGS) ./cmd/platform/*.go --disableconfigwatch &
./cmd/platform/*.go
的含义是什么?执行哪些特定文件?当我在终端中输入程序时,程序正确执行。
我正在尝试在IDE中输入命令行参数,但我需要一个特定的条目文件.....
答案 0 :(得分:0)
在计算机编程中,特别是在类Unix环境中, glob模式指定带有通配符的文件名集。对于 例如,Unix命令mv * .txt textfiles / moves(mv)所有文件 名称以.txt结尾,从当前目录到目录 文本文件。在这里,*是一个通配符代表“任何字符串 字符“和* .txt是一个glob模式。另一个常见的通配符是 问号(?),代表一个字符。
显然,./cmd/platform/*.go
从当前目录开始,在cmd/platform
目录中查找与通配符*.go
匹配的文件。
ls ./cmd/platform/*.go
命令将列出Linux上的文件。
因此,go run ./cmd/platform/*.go
命令编译并运行这些Go(*.go
)源文件。请参阅Command go文档:Compile and run Go program。