使用 thor 进行复杂的命令行工具

发布于 2024-11-05 07:31:53 字数 255 浏览 0 评论 0原文

我想使用 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

画中仙 2024-11-12 07:31:53

根据相关 Gem 文档,您可以指定(在您的 .gemspec 中):

spec.executables = ['bin/foo', 'bin/bar']
spec.default_executable = 'bin/bar'

并让您的 gem 安装一堆可执行文件(foobar)。或者,您为所有 Thor 脚本编写一个包装器并指定:

spec.executables = ['bin/wrapper']

并让您的 gem 仅安装一个可执行文件 (wrapper)。

According to the relevant Gem documentation, you could specify (in your .gemspec):

spec.executables = ['bin/foo', 'bin/bar']
spec.default_executable = 'bin/bar'

and have your gem install a bunch of executables (foo and bar). Or you write a wrapper for all your Thor scripts and specify:

spec.executables = ['bin/wrapper']

and have your gem install only one executable (wrapper).

菊凝晚露 2024-11-12 07:31:53

电传打字机 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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文