总的来说,我对 Go 很陌生,这是我在 Cobra 的第一个项目。
使用命令行工具在 Cobra 中创建命令似乎很容易:
cobra add <command>
添加子命令似乎也很容易。
cobra add <subcommand> -p '<command>'
我遇到的问题是有两个子命令用于两个不同的命令,但子命令具有相同的名称。例如:
我可能有一个名为“people”的命令和一个名为“places”的命令。
cobra add people
cobra add places
每个命令都需要自己的子命令,称为“add”。
cobra add add -p 'people'
cobra add add -p 'places'
第二个命令将失败,因为它将尝试创建一个已由第一个命令创建的“add.go”文件。是否可以将同名的子命令添加到不同的父命令?最终结果将类似于:
people add --first "bob" --last "smith"
places add "someplace" --zip "12345"