2017-02-17 42 views
0

我有一個配置文件。例如:config.xml它有以下配置。如何使用shell腳本sed命令替換文件中xml標記之間的值?

<!-- Admin username for the Authentication manager. --> 
    <Username>adminusername</Username> 
    <!-- Admin password for the Authentication manager. --> 
    <Password>adminpassword}</Password> 

我需要通過運行shell腳本來更改值「adminusername」和「adminpassword」。我怎樣才能達到這個使用sed?

+0

sed的是不是一個好的選擇,以XML的輸入工作,看到https://stackoverflow.com/questions/1794995/find-and-replace-in-xml-file-using-sed – Sundeep

回答

0

Sed不適合工作。使用可以真正解析XML的XML-aware工具。

例如,在xsh我碰巧維護,你可以寫

open config.xml ; 
set /Root/Username "newname" ; 
set /Root/Password "newpassword" ; 
save :b ; 

(提供的XML的根元素稱爲Root,所提到的內容是它的孩子,他們不再重複。)

+0

我還沒有跨越XSH來。另一個類似的工具是xmlsh - www.xmlsh.org –