首页 > 解决方案 > GO C 风格的控制台应用程序

问题描述

我通过命令使用 cobra 框架创建了一个 Go CLI 应用程序cobra addgo build如果我在 Windows cmd 的存储库中,使用它构建它后完全可以正常工作。如果我单击,.exe我会在终端上收到以下消息:

This is a command line tool.

You need to open cmd.exe and run it from there.

这不适合我的情况。我想要一个像 C 或 C++ 一样的控制台应用程序,它可以直接打开,你可以在那里输入命令。您对我在使用眼镜蛇时如何实现这一点有什么建议吗?

非常感谢您。

标签: windowsgocmdgo-cobra

解决方案


这是故意完成的,因为通过 explorer.exe 启动时不会向命令提供任何参数,因为使用 cobra 的主要目的是解析参数和其他内容。

禁用此功能。

将此行添加到您的init()

func init(){
  cobra.MousetrapHelpText = ""
}

这让你的程序运行,它立即退出,看看它是否工作正常。使用time.Sleep(), 以便您可以看到输出。


推荐阅读