2017-10-18 191 views
0

我正在從Web上拉下XML文件並將其寫入本地目錄。在XML文件的末尾有一系列的標籤:使用PowerShell替換文件中的文本

</Product> 
</Products> 
</Feed> 

我想用另一個文件的內容(包括標籤),以取代這些標籤。這是我PowerShell的我正在運行:

$BVProductFeed = Invoke-WebRequest -Uri "[xml web page]" -OutFile "[local directory]" -TimeoutSec 1800000 
$content = [IO.File]::ReadAllText("[file to append]") 

$mergeFile = [IO.File]::ReadAllText("[xml web page]") -replace ("</Product> </Products> </Feed>",$content) | Set-Content "[updated file]" 

腳本運行正常,它拉下來的XML,將打開$內容文件就好了,但是當它寫入$mergeFile它看起來一樣的$BVProductFeed文件最初下載。我推斷這是我的替換聲明的問題。我需要在標籤之間加入CRLF嗎?

謝謝。

+1

你想達到什麼目的?在文件末尾添加更多''元素?如果是這樣,你想要什麼,那麼在PowerShell中有更優雅的方法來做到這一點。 –

+0

哦,我知道有更多優雅的方法可以做到這一點,但是,我繼承了這一點,直到我可以從頭到尾修復這個過程,我必須使用我的工作。我正在努力解決整個過程。謝謝。 – john

回答

0

是的,爲了替換整個字符串,CRLF標籤必須包含在測試中。一旦我添加了這些內容,我就可以刪除和替換文本。

相關問題