我正在尝试使用Shoes,我需要传递命令行参数(基本上,我的Shoes应用程序将从另一个预先存在的应用程序调用,这将允许我预先填充鞋子的某些部分)。我应该使用bin / shoes包装器来调用它吗?
似乎我无法将参数传递给鞋子包装器(它连接所有参数并尝试将结果用作脚本路径名称)。我似乎无法访问ARGV阵列。
Juraj.
答案 0 :(得分:4)
代码示例
Shoes.app do
para "program: #{ARGV[0]}\n"
para "arg1: #{ARGV[1]}\n"
para "arg2: #{ARGV[2]}\n"
end
从包装器shoes.run
调用时,适用于我。例如,如果我在命令行上运行./shoes.run test.app foo bar
,则会显示:
program: test.app
arg1: foo
arg2: bar
对我来说。也许你的串联行为与你如何调用Shoes有关,而不是与Shoes包装器本身有关?
此外,如果我在解压缩所有内容后运行shoes
,同样适用于我。此外,您可以运行
shoes test.app -- foo bar
确保应用程序获取参数而不是鞋子可执行文件。