dsc 配置导出

概要

生成定义一组资源的现有实例的配置文档。

语法

来自文件的配置文档

dsc config export [Options] --file <FILE>

选项字符串中的配置文档

dsc config export [Options] --input <INPUT>

来自 stdin 的配置文档

cat <FILE> | dsc config export [Options] --file -

来自文件的配置文档,其中包含来自 stdin 的参数

cat <PARAMETERS_FILE> | dsc config --parameters-file - export [Options] --file <FILE>

来自选项字符串的配置文档,其中包含来自 stdin 的参数

cat <PARAMETERS_FILE> | dsc config --parameters-file - export [Options] --input <INPUT>

DESCRIPTION

export 子命令生成一个配置文档,其中包括一组资源的每个实例。

配置文档必须作为 --input JSON 或 YAML 和 or --file 选项传递给此命令。

输入文档定义要导出的资源。 DSC 会忽略为作的输入配置中的资源指定的任何属性,但输入文档和资源实例的任何属性仍必须根据配置文档和资源实例架构进行验证。

仅使用定义输入配置中的 export 部分的资源清单指定资源。 每个资源类型仅定义一次。 如果配置文档包含资源类型不可导出或已在配置中声明的任何资源实例,则 DSC 会引发错误。

例子

示例 1 - 测试配置的资源实例是否处于所需状态

该命令检查系统以返回一个配置文档,其中包含在另存为 example.dsc.config.yaml的配置文档中定义的每个已发现的资源实例。 它使用选项将配置文档传递给 stdin --file 中的命令。

# example.dsc.config.yaml
$schema: https://aka.ms/dsc/schemas/v3/bundled/config/document.json
resources:
- name: Operating system information
  type: Microsoft/OSInfo
  properties: {}
- name: Processes
  type: Microsoft/Process
  properties: {}
cat ./example.dsc.config.yaml | dsc config export --file -

示例 2 - 将要读取的文件作为配置文档传递

该命令使用选项 --file 从文件中定义的 example.dsc.config.yaml 配置中导出资源。

dsc config export --file ./example.dsc.config.yaml

示例 3 - 将配置文档作为变量传递

该命令使用 --input 选项从变量中存储 $desired 的配置中 exoir 资源。

dsc config export --input $desired

选项

-i, --输入

指定要验证其状态的配置文档。

文档必须是包含 JSON 或 YAML 对象的字符串。 DSC 根据配置文档架构验证文档。 如果验证失败,DSC 将引发错误。

此选项与 --file 选项互斥。

Type        : string
Mandatory   : false
LongSyntax  : --input <INPUT>
ShortSyntax : -i <INPUT>

-f, --file

定义要验证其状态的配置文档的路径。

指定的文件必须包含作为 JSON 或 YAML 对象的配置文档。 DSC 根据配置文档架构验证文档。 如果验证失败,或者指定的文件不存在,DSC 将引发错误。

您还可以使用此选项从 stdin 传递配置文档,如 示例 1 所示。

此选项与 --input 选项互斥。

Type        : string
Mandatory   : false
LongSyntax  : --file <FILE>
ShortSyntax : -f <FILE>

-o, --output-format

--output-format 选项控制 DSC 对命令返回的数据使用的格式。 可用格式包括:

  • jsonJSON 行的形式发出数据。
  • pretty-json 将数据作为 JSON 发出,并带有换行符、缩进和空格以提高可读性。
  • yaml 以 YAML 格式发送数据。

默认输出格式取决于 DSC 是否检测到输出正在重定向或作为变量捕获:

  • 如果命令未重定向或捕获,DSC 会在控制台中将输出显示为 yaml 格式。
  • 如果命令输出被重定向或捕获,DSC 会将数据作为 json 格式发送到 stdout。

使用此选项时,DSC 将使用指定的格式,而不管命令是重定向还是捕获。

当命令未重定向或捕获时,控制台中的输出将被格式化以提高可读性。 当命令未重定向或捕获时,输出包括用于格式化的终端序列。

Type        : string
Mandatory   : false
ValidValues : [json, pretty-json, yaml]
LongSyntax  : --output-format <OUTPUT_FORMAT>
ShortSyntax : -o <OUTPUT_FORMAT>

-h、--help

显示当前命令或子命令的帮助。 指定此选项时,应用程序将忽略所有其他选项和参数。

Type        : boolean
Mandatory   : false
LongSyntax  : --help
ShortSyntax : -h

输出

此命令返回定义配置文档的格式化数据,其中包括 input 配置中声明的资源的每个实例。 有关详细信息,请参阅 DSC 配置文档架构参考

有关输出数据格式的更多信息,请参阅 --output-format 选项