我正在创建一个脚本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=""
我必须使用servername
更改这两个区域的portno
,username
,password
和script1.sh
。
这两个区域的Servername
和portno
都相同,但username
和password
会有所不同。那么如何从script1.sh
更改为abc.xml
sed -i 's/$strurl/$url/g' context.sh
这是我的搜索方式,但无法搜索和更改网址休息一切都很好。我认为url字符串太大而无法搜索。
答案 0 :(得分:2)
sed -i 's!$strurl!$url!g' filename
这将是答案,因为url本身包含'/'作为分隔符,所以我们需要在sed命令中使用一些其他分隔符
答案 1 :(得分:0)
您可以使用sed
选项-i
来就地更改文件。
sed -i 's/what/towhat/g' filename.txt
如果您的what
包含斜杠(/
)本身,请使用,
或{{1}中未显示的任何其他字符(例如what
) }}