我正在尝试为capistrano提供不同数量的命令行参数。可悲的是,我无法在文档或网络上的其他地方找到相关内容。
可以通过以下方式传递参数:
cap my_task -s arg1=var1 arg2=var2
然后通过var1,var2等访问它们。
但我希望我的程序处理动态数量的参数。是否有一种优雅的方式来访问或检查所有给定的参数,并将它们放在例如进入数组或可迭代的数据结构?
提前谢谢。
答案 0 :(得分:1)
另一种方法:
$ arg='foo bar baz' cap my_task
然后
ENV['arg'].split #=> ["foo", "bar", "baz"]
答案 1 :(得分:0)
我解决了我的用例,提示用户输入
Capistrano::CLI.ui.ask("TEXT:")
我做了一个直到循环,并提示用户输入特定单词('结束')。这只是一种解决方法,但确实是它的工作。然而,如果有人能像我在原始问题中指出的那样告诉我如何做到这一点,我会很高兴。