Introduction To Using XML Files With PowerShell

PowerShell tarjoaa useita tapoja lukea XML-asiakirjoja kirjoittamatta paljon koodia tai käyttämällä Xpathia. Näin pääset alkuun.

XML: n manipulointi on yksi niistä aiheista, jotka saavat sen koskaan tehneen vihastumaan. Se on tyypillisesti aikaa vievää, vaikeasti ymmärrettävää ja vain yleinen piikki perseessä. Messing kanssa XML joissakin muissa kielissä lisäksi PowerShell vaatii olennaisesti ulkoa XML puu varmista olet manipulointi oikea solmu oikealla tasolla. Päälle, että, sinun todennäköisesti myös oppia kirjoittamaan hämärä XPath kyselyt löytää sisältöä XML-asiakirjan.

Powershellissa ja XML-tiedostojen lukemisessa

Powershellissa on vielä XPath, mutta sitä ei välttämättä tarvitse käyttää. PowerShell tarjoaa helpon tavan lukea XML-tiedostoja, manipuloida niitä ja lopuksi tallentaa ne takaisin levylle kirjoittamatta paljon koodia tai tuntematta Xpathia. PowerShell tekee tämän tarjoamalla käyttäjän piste-merkinnän merkitäkseen jokaisen solmun XML-dokumentissa. Mutta ensin, aloitetaan lukeminen XML-asiakirjan.

yksi tapa lukea XML-dokumentti Powershellissa on latoa muuttuja tyyppiin . Voit luoda tämän muuttujan, Voimme käyttää Get-Content cmdlet lukea kaikki teksti XML-dokumentti. Ladataksesi Get-Content-tuotoksen voimme yksinkertaisesti valmistella tekstin muuttujan eteen. Tämä kertoo Powershellille, että tarvitsemme tämän muuttujan latistettuna järjestelmänä.Xml.XmlDocument tyyppi Oletusrivityypin sijaan, joka yleensä tulee Get-Contentistä.

$XmlDocument = Get-Content-Path C:Cars.xml

tässä artikkelissa käytetään XML-tiedostoa nimeltä Cars.esimerkkinä xml, joka sisältää erilaisia automerkkejä ja-malleja.

Kun olet ajanut Get-Contentin, voit lukea XML-dokumentin raakatekstin ja valaa tulosteen Kirjoita järjestelmä.Xml.XmlDocument, sinulla on nyt muuttuja nimeltä $XmlDocument, joka sisältää koko XML-solmupuun, joka edustaa kyseistä asiakirjaa.

tässä vaiheessa asiakirjan lukeminen on triviaali tehtävä edellä mainitun pistemerkinnän vuoksi. Koska meillä on nyt XML-dokumentti muistissa, voimme tutkia puuta.

Huomaatko, miten pääsemme yhä syvemmälle dokumenttiin pistemerkinnän avulla? Jos osumme kohtaan asiakirjassa, joka sisältää samankaltaisen solmun (autot), voimme sitten käsitellä sitä kuin PowerShell-taulukkoa ja määrittää hakemistonumeron. Tässä tapauksessa löydämme asiakirjasta ensimmäisen auton määrittelemällä indeksinumeron 0.

sanotaan, että haluat löytää tästä XML-dokumentista kaikki autot, joissa on vähintään neljä istuinta. Yksinkertaisesti käyttämällä yhteistä PowerShell cmdlet Where-Object voimme helposti hakea nämä tiedot.

yhdistämällä solmut

huomaa, että PowerShell yhdistää sekä solmut (elementit) että XML-attribuutit kaikki yhdessä sarjassa? Näin voit helposti kammata läpi asiakirjan vain käyttämällä piste merkintä ja missä-objekti cmdlet. PowerShell tuntee kaikki attribuutit ja alielementit, jotka liittyvät jokaiseen XML: ään ja näyttää ne oletuksena mukavassa taulukossa sinulle.

olemme näyttäneet yhden menetelmän, jolla voit lukea XML-dokumentteja. Yksi Powershellissa olevista mukavuuksista on se, että se voi olla niin helppoa tai vaikeaa kuin haluat sen olevan. Olemme osoittaneet, miten löytää solmuja XML-dokumentissa käyttäen piste merkintä. Jos sinulla on joskus tarvetta tehdä kehittyneempiä hakuja, suosittelemme tutkimaan käyttämällä cmdlets kuten Select-Xml rakentaa tehokkaampia kyselyitä. Joka tapauksessa, PowerShell avulla voit lukea ja löytää lähes mitä tahansa XML-dokumentista. Loppu riippuu sinusta.

Vastaa

Sähköpostiosoitettasi ei julkaista.