我想使用JSON文件存储Powershell脚本的参数。很少有JSON属性具有完整文件路径作为值。
https://jsonlint.com/显示JSON有效。但是,ConvertFrom-Json
cmdlet会引发错误。
请帮助我修复此JSON解析。
JSON:
{
"region": "US","proxy_address_exception_list": "1.1.1.1; 2.2.2.2","dsvm_ip_address": "10.1.1.1","svm_ip_address": "10.2.2.2","url_without_xto": "abc.com","url_with_xto": "def-xto.com","web_server_farm_name": "dss","full_path_to_requestrouter_amd64_msi": "c:\\script_downloads\\requestrouter.msi","full_path_to_rewrite_amd64_en_US_msi": "c:\\script_downloads\\rewrite.msi","full_path_to_webfarm_v1_1_amd64_en_US_msi" : "c:\\script_downloads\\webfarm.msi","full_path_to_application_host_config": "c:\\script_downloads\\applicationHost.config"
}
PowerShell代码:
# Get parameter_list from file
$parameter_list_json = Get-Content -Path "C:\Users\manjug\Desktop\Visualization_Automation\parameters.json" -Raw
$parameter_list = ConvertFrom-Json $parameter_list_json
错误:
PS C:\Users\manjug\Desktop> # Get parameter_list from file
$parameter_list_json = Get-Content -Path "C:\Users\manjug\Desktop\Visualization_Automation\parameters.json" -Raw
$parameter_list = ConvertFrom-Json $parameter_list_json
ConvertFrom-Json : Unrecognized escape sequence. (293): {
"region": "US","dsvm_ip_address": "10.1.1.1.","full_path_to_requestrouter_amd64_msi": "c:\script_downloads\requestrouter_amd64_msi","full_path_to_rewrite_amd64_en_US_msi": "c:\script_downloads\rewrite_amd64_en_US_msi","full_path_to_webfarm_v1_1_amd64_en_US_msi" : "c:\script_downloads\webfarm_v1_1_amd64_en_US_msi","full_path_to_application_host_config": "c:\script_downloads\applicationHost.config"
}
At line:3 char:19
+ $parameter_list = ConvertFrom-Json $parameter_list_json
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [ConvertFrom-Json],ArgumentException
+ FullyQualifiedErrorId : System.ArgumentException,microsoft.PowerShell.Commands.ConvertFromJsonCommand