Freigeben über


dsc config set

Zusammenfassung

Erzwingt den gewünschten Status von Ressourceninstanzen in einem Konfigurationsdokument.

Syntax

Konfigurationsdokument von stdin

<document-string> | dsc config set [Options]

Konfigurationsdokument aus Optionszeichenfolge

dsc config set [Options] --document <document-string>

Konfigurationsdokument aus Datei

dsc config set [Options] --path <document-filepath>

Beschreibung

Der unterbefehl set erzwingt den gewünschten Status der Ressourceninstanzen in einem Konfigurationsdokument. Wenn dieser Befehl ausgeführt wird, überprüft DSC das Konfigurationsdokument, bevor er den Testvorgang für jede im Dokument definierte Ressourceninstanz aufruft. DSC ruft dann den set-Vorgang für jede Ressourceninstanz auf, die sich nicht im gewünschten Zustand befindet.

Das Konfigurationsdokument muss an diesen Befehl als JSON oder YAML über Stdin übergeben werden, als Zeichenfolge mit der Option Dokument oder aus einer Datei mit dem Pfad Option.

Beispiele

Beispiel 1: Festlegen der Ressourceninstanzen einer Konfiguration auf den gewünschten Zustand

Der Befehl prüft die im Konfigurationsdokument definierten Ressourceninstanzen, die als example.dsc.config.yaml gespeichert sind, und legt sie bei Bedarf auf den gewünschten Zustand fest.

# example.dsc.config.yaml
$schema: https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2024/04/config/document.json
resources:
- name: Windows only
  type: Microsoft.DSC/Assertion
  properties:
    $schema: https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2024/04/config/document.json
    resources:
    - name: os
      type: Microsoft/OSInfo
      properties:
        family: Windows
- name: Current user registry example
  type: Microsoft.Windows/Registry
  properties:
    keyPath: HKCU\example
    _exist: true
  dependsOn:
    - "[resourceId('Microsoft.DSC/Assertion', 'Windows only')"
cat ./example.dsc.config.yaml | dsc config set

Beispiel 2: Übergeben einer Datei, die als Konfigurationsdokument gelesen werden soll

Der Befehl verwendet die Option Pfad, um die in der example.dsc.config.yaml Datei definierte Konfiguration zu erzwingen.

dsc config set --path ./example.dsc.config.yaml

Beispiel 3 : Übergeben eines Konfigurationsdokuments als Variable

Der Befehl verwendet die Option Dokument, um die in der $desired Variable gespeicherte Konfiguration zu erzwingen.

dsc config set --document $desired

Optionen

-d, --document

Gibt das Konfigurationsdokument an, für das der Zustand erzwungen werden soll. Das Dokument muss eine Zeichenfolge sein, die ein JSON- oder YAML-Objekt enthält. DSC überprüft das Dokument anhand des Konfigurationsdokumentschemas. Wenn die Überprüfung fehlschlägt, löst DSC einen Fehler aus.

Diese Option kann nicht mit konfigurationsdokument über stdin oder der option --path verwendet werden. Wählen Sie aus, ob das Konfigurationsdokument an den Befehl über Stdin übergeben werden soll, aus einer Datei mit der Option --path oder mit der Option --document.

Type:      String
Mandatory: false

-p, --path

Definiert den Pfad zu einem Konfigurationsdokument, um den Zustand zu erzwingen, anstatt das Dokument aus Stdin zu übergeben oder als Zeichenfolge mit der Option --document zu übergeben. Die angegebene Datei muss ein Konfigurationsdokument als JSON- oder YAML-Objekt enthalten. DSC überprüft das Dokument anhand des Konfigurationsdokumentschemas. Wenn die Überprüfung fehlschlägt oder die angegebene Datei nicht vorhanden ist, löst DSC einen Fehler aus.

Diese Option schließt sich gegenseitig mit der option --document aus. Wenn Sie diese Option verwenden, ignoriert DSC alle Eingaben von Stdin.

Type:      String
Mandatory: false

-w, --what-if

Wenn Sie diese Kennzeichnungsoption angeben, ändert DSC den Systemzustand nicht mit dem set Vorgang. Stattdessen wird die Ausgabe zurückgegeben, die angibt, , wie der Vorgang den Systemstatus ändert, wenn er ohne diese Option aufgerufen wird. Verwenden Sie diese Option, um eine Vorschau der Änderungen an einem System vorzunehmen.

Die Ausgabe für den Befehl, wenn Sie diese Option verwenden, ist identisch mit der Ausnahme, dass das ExecutionType Metadatenfeld auf WhatIf anstelle von Actualfestgelegt ist.

Type:      Boolean
Mandatory: false

-f, --format

Die option --format steuert das Konsolenausgabeformat für den Befehl. Wenn die Befehlsausgabe als Variable umgeleitet oder erfasst wird, ist die Ausgabe immer JSON.

Type:         String
Mandatory:    false
DefaultValue: yaml
ValidValues:  [json, pretty-json, yaml]

-h, --help

Zeigt die Hilfe für den aktuellen Befehl oder Unterbefehl an. Wenn Sie diese Option angeben, ignoriert die Anwendung alle Optionen und Argumente nach dieser Option.

Type:      Boolean
Mandatory: false

Ausgabe

Dieser Befehl gibt die JSON-Ausgabe zurück, die enthält, ob der Vorgang oder alle Ressourcen Fehler ausgelöst haben, die Auflistung von Nachrichten, die während des Vorgangs ausgegeben werden, und die Ergebnisse des festgelegten Vorgangs für jede Instanz. Weitere Informationen finden Sie unter dsc config get result schema.