#xml #powershell
Вопрос:
Я хотел бы обновить атрибут даты с помощью PowerShell. SelectNodes
методы не работают из-за того, как форматируется XML (созданный третьей стороной, не может обновить схему). Есть ли способ обновить поле даты с помощью функции PowerShell XML?
<?xml version="1.0" encoding="utf-8"?>
<JOBS>
<ScheduleDetails Environment="Env1" Type="Prod" Recursive="Y" Date="2021-10-06 20:00" Finished="N" Running="N" Interval="7" />
<ScheduleDetails Environment="Env2" Type="Prod" Recursive="Y" Date="2021-10-06 20:10" Finished="N" Running="N" Interval="7" />
<ScheduleDetails Environment="Env3" Type="Prod" Recursive="Y" Date="2021-10-06 20:20" Finished="N" Running="N" Interval="7" />
</JOBS>
Комментарии:
1. Вы говорите
SelectNodes()
, что не работает, можете ли вы показать нам код, который вы пробовали, но потерпел неудачу? И дайте нам знать, к каким ошибкам (если таковые имеются) это привело2. Спасибо! Я использовал »
$xmlProperty = $config.SelectNodes("/JOBS/ScheduleDetails/Date")
вместо$xmlProperty = $config.SelectNodes("/JOBS/ScheduleDetails")
3. Дата — это не имя узла, вместо этого вам понадобится что-то вроде
$config.SelectNodes('//ScheduleDetails') |ForEach-Object { $_.Date = "New Date Value" }