我在子目录下有一个插件列表。我想用一个命令构建所有这些。有一个示例目录布局。
plugins/cat/cat.go
plugins/dog/dog.go
plugins/cow/cow.go
我现在像这样构建它们:
go build -i -buildmode=plugin -o build/cat.so plugins/cat/cat.go
go build -i -buildmode=plugin -o build/dog.so plugins/dog/dog.go
go build -i -buildmode=plugin -o build/cow.so plugins/cow/cow.go
还有另一个命令(因为它在 Makefile 中),它帮助我更接近:
# Ex.: make bin-so TARGET=cat
bin-so: builddir
go build -i -buildmode=plugin -o build/$(TARGET).so plugins/$(TARGET)/$(TARGET).go
我想创建一行来构建这些插件。我发现了如何列出文件夹名称,但我必须在上面的命令中以某种方式使用它。
find ./plugins -mindepth 1 -maxdepth 1 -type d | awk 'sub(/^.*\//, "")'
所以它会列出文件夹的名称,这些对我来说很好,但我必须将它重定向到插件构建器命令。
我想要类似的东西(只是一个例子):
find ./plugins -mindepth 1 -maxdepth 1 -type d | awk 'sub(/^.*\//, "")' | go build -i -buildmode=plugin -o build/$1).so plugins/$1/$1.go
ABOUTYOU
相关分类