我不知道這將如何工作,但我基本上試圖編寫一個命令行應用程序,我可以運行命令和子命令。我使用這個流行的第三方庫,用於解析命令行參數:轉:命令行應用程序安裝
我的問題是我有一個項目文件夾,我的。去的文件會生活:
MyProject
所以即使在我main.go文件中的代碼,用他們的例子,我有:
package main
import (
"fmt"
"os"
"github.com/urfave/cli"
)
func main() {
app := cli.NewApp()
app.Name = "greet"
app.Usage = "fight the loneliness!"
app.Action = func(c *cli.Context) error {
fmt.Println("Hello friend!")
return nil
}
app.Run(os.Args)
}
當我運行go install
,
在我的$ GOPATH/bin目錄中,我實際上獲取了MyProject。然後,當我從終端運行MyProject
,我得到
USAGE:
myproject [global options] command [command options] [arguments...]
但在現實中,我不首先需要的myproject
命令。有沒有辦法通過命令行應用程序或第三方包來創建命令行應用程序,以便我可以從命令行運行greet
而不是myproject
作爲第一個命令?謝謝。