Ruby将字符串推送到数组

时间:2017-04-22 00:08:51

标签: arrays ruby string push

我有以下代码块,我想将输出转换为数组而不是一系列字符串,但我现在还不确定是否会将其推入。

default['max_log']['instances'] = 20

servers haproxy_backends('max_logger').map { |h|
  ("1".."#{node['max_log']['instances']}").each  { |i|
    "#{h}:83#{i} #{h}:83#{i} check inter 10s rise 2 fall 3"
  }
}

服务器功能应该是一个类似于此类的数组,其中所有变量都被扩展和解析。

[
  'server1:8301 server1:8301', 
  'server1:8302 server1:8302', 
  'server2:8301 server2:8301', 
  ...
]

我已尝试在irb中制作一些非常简单的版本用于测试,但我真的不知道我在做什么。

a = []
# => []

def d
  ('01'..'10').each { |i| puts i }
end
# => :d

a.push(d)
01
02
03
04
05
06
07
08
09
10

# => ["01".."10"]
a

# => ["01".."10"]
d
01
02
03
04
05
06
07
08
09
10
# => "01".."10"

backends = ['maxlog-1', 'maxlog-2']
backends.map { |h| (1..5).each { |i| puts "#{h}:#{i}" } }

ruby test.rb
# => maxlog-1:1
# => maxlog-1:2
# => maxlog-1:3
# => maxlog-1:4
# => maxlog-1:5
# => maxlog-2:1
# => maxlog-2:2
# => maxlog-2:3
# => maxlog-2:4
# => maxlog-2:5

0 个答案:

没有答案