Chef infra 厨师刀命令显示所有属性

Chef infra 厨师刀命令显示所有属性,chef-infra,knife,Chef Infra,Knife,我正在尝试使用单个刀命令显示所有节点的所有属性。 我特别希望看到属性设置在正常级别 请帮助这有点棘手,取决于您想要实现的目标 您可以触发此查询: knife search node 'name:*' -F j 记住,这将以JSON格式获取所有节点及其数据,但如果您可以根据某些属性考虑过滤节点的参数,那就更好了。可以是您设置的某个属性或类似于角色:WEB刀节点显示$name--格式json--long。或者较短的刀节点显示$name-Fj-l。(如果您只需要普通属性,也可以使用-m/--medi

我正在尝试使用单个刀命令显示所有节点的所有属性。 我特别希望看到属性设置在正常级别


请帮助

这有点棘手,取决于您想要实现的目标

您可以触发此查询:

knife search node 'name:*' -F j

记住,这将以JSON格式获取所有节点及其数据,但如果您可以根据某些属性考虑过滤节点的参数,那就更好了。可以是您设置的某个属性或类似于
角色:WEB

刀节点显示$name--格式json--long
。或者较短的
刀节点显示$name-Fj-l
。(如果您只需要普通属性,也可以使用
-m/--medium

您可以使用

knife exec -E 'nodes.find("*:*") {|n| puts n.normal_attrs}'
将在所有节点中搜索正常属性

您可以使用替换正常属性

  • 默认属性
  • 覆盖属性

  • 最后,您可以用属性替换它,这些属性将以原始格式输出所有内容。

    是的,所有节点数据都是JSON格式的,您必须逐个节点解析数组。你不能得到“仅仅是属性”。这至少可以获取所有节点的所有属性。@Jeetendra,你能用其他方法解决它吗?如果是,请分享作为答案。这对我来说很好,在我的情况下,我只想从某个根法线属性键入一组特定的法线属性。我使用了:knife exec-E’nodes.find(“recipe:my_recipe”){n|put“{n.name}{n.normal_attrs.my_normal_attr_key_root}”