【问题标题】:How to Assign a batch command output to Chef recipe attribute如何将批处理命令输出分配给 Chef 配方属性
【发布时间】:2020-03-13 18:12:00
【问题描述】:

我有一个 windows 命令来检查最近更新的目录。

for /f "delims=" %a in (' dir C:\Users\Username\cookbooks /ad /od /b ') do set "Last=%a";
echo %Last%;

我想将上述命令的输出分配给厨师食谱属性/食谱属性。

我确实尝试在批处理资源中直接执行上述命令并分配输出,但失败了。 有没有办法在厨师食谱属性中这样做?

【问题讨论】:

    标签: ruby chef-infra cookbook


    【解决方案1】:

    您可以将 a 命令作为说明书执行的一部分运行,并使用 shell_out 将值分配给节点属性

    例如,它看起来像

    ruby_block 'foo' do
      block do
        cmd = "your command here"
        shell = Mixlib::ShellOut.new(cmd).run_command
        stdout = shell.stdout
        node.default['my_key'] = stdout
      end
    end
    

    【讨论】:

      猜你喜欢
      • 2013-04-18
      • 1970-01-01
      • 2021-02-04
      • 2011-01-28
      • 2019-01-08
      • 2017-08-12
      • 2012-02-23
      • 2011-01-02
      • 2022-01-04
      相关资源
      最近更新 更多