雷神wiki页面,Making an Exectable,向您展示如何创建一个雷神供电CLI命令看起来是这样的:雷神可执行文件 - 忽略任务名称
bash ./mythorcommand foo
这需要你在雷神任务传递第一个参数是foo。
我也可以用雷神之default_method运行不带任何参数雷神可执行文件:
bash ./mythorcommand
不过,我想在一个变量字符串作为第一个参数传递:
bash ./mythorcommand "somevalue"
这不起作用,因为thor命令期望第一个参数是任务名称。有没有办法忽略任务名称并将第一个参数发送给默认方法?
如果此功能不存在,我认为这将是非常有益的补充,将通过所有的命令行参数到一个任务/方法的方法:
class MyThorCommand < Thor
only_method :default
def default(*args)
puts args.inpsect
end
end
MyThorCommand.start
这个答案是正确的。使用'argument:bar'通过调用#act内的'bar'来使得未命名的字符串参数的内容可用。 Thor会在'class_options'定义的选项之前或之后找到这个参数。 –
请注意Thor :: Group一次调用所有任务。 – FuePi