使用 thor 进行复杂的命令行工具
我想使用 Thor 在 Ruby 中创建一个命令行工具。该工具应该打包为 gem,以便于安装和卸载。
创建并发布 gem,我已经完成了。我还创建了几个同样有效的雷神脚本。但是,我不知道如何将它们结合起来。
我的目标是能够通过以下方式调用我的工具: mytool 任务参数--选项 mytool taskgroup:task param --options
我知道如何使一个 Thor 脚本可执行。但是,如何使一堆雷神脚本可以通过抛出一个命令来访问?
i want to create a command line tool in Ruby using Thor. This tool should be packaged as a gem so that it is easily installed and uninstalled.
Creating and publishing the gem, I have done. I also created several Thor scripts which also work. However, I do not know how to combine them.
My aim is to be able to call my tool the following way:
mytool task param --options
mytool taskgroup:task param --options
I know how to make one Thor script to be executable. However, how do I make a bunch of thor scripts accessible throw one command?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
根据相关 Gem 文档,您可以指定(在您的 .gemspec 中):
并让您的 gem 安装一堆可执行文件(
foo
和bar
)。或者,您为所有 Thor 脚本编写一个包装器并指定:并让您的 gem 仅安装一个可执行文件 (
wrapper
)。According to the relevant Gem documentation, you could specify (in your .gemspec):
and have your gem install a bunch of executables (
foo
andbar
). Or you write a wrapper for all your Thor scripts and specify:and have your gem install only one executable (
wrapper
).电传打字机 gem (https://github.com/piotrmurach/tty) 在设置方面做得非常出色为此搭建所有脚手架。使用电传打字机创建您的项目,然后只需填写实施即可。
The teletype gem (https://github.com/piotrmurach/tty) does an amazing job at setting up all the scaffolding for this. Create your project with teletype and then just fill in the implementation.