Chef:计算文件夹中的文件数

时间:2017-11-08 20:10:12

标签: ruby chef chef-recipe cookbook

我正在尝试获取文件夹中的文件数,并根据计数跳过或执行更多资源。

file 'C:\Users\Desktop\Chef-file\count.txt' do
            dir = 'C:\Users\Desktop\Chef-Commands'
                count = Dir[File.join(dir, '**', '*')].count { |file| File.file?(file)}
              content count
            end

但是收到以下错误

Chef::Exceptions::ValidationFailed: Property content must be one of: String, nil!  You passed 0.

我对厨师和红宝石很陌生,所以想知道如何解决/解决这个问题。

获得计数后,如何检查其在其他资源中的值?

也想知道这是否是正确的方法。

由于

1 个答案:

答案 0 :(得分:1)

count似乎是0(Fixnum)。

你可能想尝试:

file 'C:\Users\Desktop\Chef-file\count.txt' do
  dir = 'C:\Users\Desktop\Chef-Commands'
  count = Dir[File.join(dir, '**', '*')].count { |file| File.file?(file)}
  content count.to_s
end