检查capistrano中给定的命令行参数

时间:2014-09-26 09:18:23

标签: ruby capistrano

我正在尝试为capistrano提供不同数量的命令行参数。可悲的是,我无法在文档或网络上的其他地方找到相关内容。

可以通过以下方式传递参数:

cap my_task -s arg1=var1 arg2=var2

然后通过var1,var2等访问它们。

但我希望我的程序处理动态数量的参数。是否有一种优雅的方式来访问或检查所有给定的参数,并将它们放在例如进入数组或可迭代的数据结构?

提前谢谢。

2 个答案:

答案 0 :(得分:1)

另一种方法:

$ arg='foo bar baz' cap my_task

然后

ENV['arg'].split #=> ["foo", "bar", "baz"]

答案 1 :(得分:0)

我解决了我的用例,提示用户输入

Capistrano::CLI.ui.ask("TEXT:")

我做了一个直到循环,并提示用户输入特定单词('结束')。这只是一种解决方法,但确实是它的工作。然而,如果有人能像我在原始问题中指出的那样告诉我如何做到这一点,我会很高兴。