簡體   English   中英

如何在Shell腳本中更改文件的內容?

[英]How to change contents of a file in shell script?

我正在創建腳本script1.sh通過該腳本我必須更改xml文件( abc.xml )的內容。 xml文件的內容是

area = xyz/a
url = "sqlserver://servername:portno/a"
username=""
password=""

area = xyz/b
url = "sqlserver://servername:portno/b"
username=""
password=""

我必須使用script1.sh password兩個區域的servername usernameportnousernamepassword 兩個區域的Servernameportno相同,但usernamepassword不同。 那么如何從script1.sh更改為abc.xml

sed -i 's/$strurl/$url/g' context.sh

這就是我正在搜索的方法,但是無法搜索和更改url rest都很好。 我認為網址字串太大,無法搜尋。

sed -i 's!$strurl!$url!g' filename

這將是答案,因為url本身包含'/'作為分隔符,因此我們需要在sed命令中使用其他分隔符

可以將sed與選項-i一起使用以就地更改文件。

sed -i 's/what/towhat/g' filename.txt

如果您what包含斜杠( / )本身,使用任何其他字符(例如, ),它不會出現在whattowhat

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM