我正在尝试将值从ruby哈希值传递给bash脚本..最好的方法是什么? ruby中的大小和键/值对总是不同的。
所以,如果我想要像...那样的东西。
hsh = {"key1"=>"value1", "key2"=>"value2"}
%x[sh script.sh #{hsh}]
在bash方面我需要什么?
编辑:如果ruby端的哈希不起作用,我可以使用另一种数据结构,我关心的是容器(哈希/数组)的大小总是不同的。EDIT2:“关心大小”我的意思是哈希/数组每次都会有不同数量的元素。对不起来感到抱歉
答案 0 :(得分:1)
您可以从Ruby脚本中打印值并在Bash脚本中读取它们。您将需要Bash 4才能使用关联数组,或者您可以迭代值并在读取时对其进行操作。为什么不在Ruby脚本中用Bash做你想做的事呢?
# works with Bash 3 or 4
while read -r key value
do
echo "$key $value" # act on the keys and values
done < <(ruby-script)