【问题标题】:How correct write parameter in powershell DSC如何在 powershell DSC 中正确写入参数
【发布时间】:2014-11-05 16:27:32
【问题描述】:

我创建了自定义 DSC 模块。我在 DSC 资源中只有两个值,其中一个是二维数组:

node ("localhost")
   {
        ChangeXML ChangeValue
        {
            NameFile=$PathToXml #Enter path to input xml
            DownloadManagerCustomData = 
            @(
                @{
                        Node = 'some path';
                        Value = 'some value' 
                }#end of hash array

                @{
                        Node = 'some path';
                        Value = 'some value' 
                }#end of hash array 

            )#end of two dimensional array

        }
   }

我创建了 ChangeXML.schema.mof,它描述了变量。所以,我不知道如何写数组。你能帮帮我吗?

[ClassVersion("1.0"), FriendlyName("ChangeXML")]
class ChangeXML : OMI_BaseResource
{
  [Key] String NameFile;
  [Write] *Array?* DownloadManagerCustomData;
};

【问题讨论】:

  • 我不确定您的问题的答案是什么,但要明确一点,您创建的是哈希数组。不是二维数组。

标签: powershell dsc


【解决方案1】:
[ClassVersion("1.0"), FriendlyName("ChangeXML")]
class ChangeXML : OMI_BaseResource
{
  [Key] String NameFile;
  [Write] EmbeddedInstance("MSFT_KeyValuePair")] String DownloadManagerCustomData[];
};

您也可以在PowerShell.org's DSC repo 中使用New-MofFile 函数。它为您生成 MOF 并且运行良好(完全披露,我不隶属于它,但我为它贡献了一点代码)。

编辑

修复了上面的代码,只是意识到New-MofFile 不会(当前)处理这个问题,但可以这样做,我可能会在有机会时为此目的对其进行修补。

我还为你展示的内容(哈希表数组)而不是你所说的内容(数组数组)提供了 MOF 语法。

【讨论】:

    猜你喜欢
    • 2021-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-13
    • 1970-01-01
    • 2019-05-13
    • 2011-10-26
    • 1970-01-01
    相关资源
    最近更新 更多