爲了證明一個方法我用讓先在您的示例XML文件:
定義一個變量的XML文件名
$xmlFile = "C:\temp\myconfig.xml"
定義的XML字符串保存到文件
$xmlFromString = [xml]@"
<server>
<service>
<Connector port="8080" password="password1234"/>
</service>
</server>
"@
保存XML內容的文件
$xmlFromString.Save($xmlFile)
生成的文件內容
Get-Content -Path $xmlFile
<server>
<service>
<Connector port="8080" password="password1234" />
</service>
</server>
這裏是PowerShell代碼更改數值 獲取從文件的XML內容
$xml = [xml](Get-Content -Path $xmlFile)
查找元素/節點並更改屬性值
$node = $xml.selectSingleNode('//server/service/Connector')
$node.port = "9090"
$node.password = "MyNewPassord4321"
保存XML內容背出來
$xml.Save($xmlFile)
結果
Get-Content -Path $xmlFile
<server>
<service>
<Connector port="9090" password="MyNewPassord4321" />
</service>
</server>
保存命令一個PowerShell PS1文件並執行/通過運行電源外殼。
- 將用戶/帳戶上運行什麼權利的腳本有:
究竟你試圖完成的,如我們需要的其他詳細信息?
- 腳本將從哪裏運行?本地PC或服務器?
- 一臺或多臺服務器/工作站?
- 通過Windows調度程序任務執行?
希望有幫助。 - 布魯克斯
您可以使端口和密碼參數%1%2。 – jdweng
對不起,你能描述一下如何做得更詳細些嗎?另外:不需要創建端口或密碼值。也可以搜索「password1234」並替換它,因爲我的文件中有一個默認密碼,它始終是相同的,必須替換它。 – Tobi123
我找到了for/f命令的一些解決方案,但是這不包括替換:( – Tobi123