概要
驗證配置文件中的資源實例是否處於所需狀態。
語法
來自檔的配置文件
dsc config test [Options] --file <FILE>
選項字串中的配置文件
dsc config test [Options] --input <INPUT>
來自 stdin 的配置文件
cat <FILE> | dsc config test [Options] --file -
來自檔的配置文件,其中包含來自 stdin 的參數
cat <PARAMETERS_FILE> | dsc config --parameters-file - test [Options] --file <FILE>
來自選項字串的配置文件,其中包含來自 stdin 的參數
cat <PARAMETERS_FILE> | dsc config --parameters-file - test [Options] --input <INPUT>
說明
該 test 子命令驗證配置文件中的資源實例是否處於所需狀態。 當此命令運行時,DSC 會先驗證配置文檔,然後再為文檔中定義的每個資源實例調用測試作。
配置文件必須作為 --input JSON 或 YAML 和 or --file 選項傳遞給此命令。
範例
範例 1 - 測試配置的資源實例是否處於所需狀態
該命令返回另存為 example.dsc.config.yaml的配置文檔中定義的資源實例的狀態、所需狀態、實際狀態和不同屬性。 它使用選項將配置文件傳遞給 stdin --file 中的命令。
# example.dsc.config.yaml
$schema: https://aka.ms/dsc/schemas/v3/bundled/config/document.json
resources:
- name: Windows only
type: Microsoft.DSC/Assertion
properties:
$schema: https://aka.ms/dsc/schemas/v3/bundled/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 test --file -
範例 2 - 將要讀取的檔作為設定文件傳遞
該命令使用 --file option 來驗證文件中定義的 example.dsc.config.yaml 配置。
dsc config test --file ./example.dsc.config.yaml
範例 3 - 將設定文件作為變數傳遞
該命令使用 --input option 來驗證存儲在變數中的 $desired 配置。
dsc config test --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 對命令傳回的數據使用的格式。 可用格式包括:
-
json以 JSON 行的形式發出數據。 -
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
輸出
此命令返回格式化數據,其中包括作或任何資源是否引發了任何錯誤、作期間發出的消息集合以及每個實例的測試作結果。 有關更多資訊,請參閱 dsc config 測試結果架構。
有關輸出數據格式的更多資訊,請參閱 --output-format 選項。