Puncte:0

actualizați secțiunea numită duplicat XML cu Powershell

drapel in

Folosind Powershell, aș dori să actualizez starea compatibilă a Outlook la True

<default>
  <application>Excel.exe</application>
  <compatible>True</compatible>

  <application>Outlook.exe</application>
  <compatible>False</compatible>

  <application>Word.exe</application>
  <compatible>False</compatible>
</default>

Această postare arată cum să editați documentul dacă există o singură instanță „default.application”, dar fișierul cu care lucrez are mai multe secțiuni denumite aplicație la acel nivel.

$doc = [xml](Obține conținut ./test.xml)

Ieșirea de $doc.default.compatible este
Adevărat
Fals
Fals

Cum modific doar valoarea de mijloc (outlook.exe) la True folosind Powershell?

Davidw avatar
drapel in
Când rulez `$doc.default.application`, primesc numele aplicației. `$doc.default.compatible` îmi dă `True False False`.
drapel in
Scuze, postarea mea este greșită. $doc.default.compatible Am actualizat postarea.
Puncte:0
drapel cn

Deoarece doriți să schimbați nodul compatibil după nodul Outlook, am implementat pentru a verifica dacă este valoarea anterioară folosind metoda PreviousSibling înainte de a schimba valoarea în True.

Cod actualizat:

$docs = [xml](Get-Content ./test.xml)

$doc = $docs.SelectNodes('/default/compatibil') 

foreach ($d în $doc){
    if($d.PreviousSibling.OuterXml -eq „<application>Outlook.exe</application>”){
        $d.'#text' = „Adevărat”
    }
}

$docs.Save($PSScriptRoot + „\test.xml”)

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.