繁体   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