我的Strings.xml文件包含以下代码:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">myurl</string>
<string name="app_name">MyApp</string>
</resources>
我希望用户使用命令行来操纵myurl的值到给定的URL。
我正在使用的命令是
sed s/myurl/http://192.168.1.1:8080/ strings.xml
但是它抛出了一个错误:sed:1:“s / myurl / http://192.168 ....”:替换命令中的坏标志:'/'
这是由两个斜杠(//)引起的。有什么方法可以将值传递给sed命令?
答案 0 :(得分:3)
您可以将其他分隔符与sed一起使用,例如!
:
sed 's!myurl!http://192.168.1.1:8080/!' strings.xml
(丑陋)替代方案是逃避它们:
sed 's/myurl/http:\/\/192.168.1.1:8080\//' strings.xml
答案 1 :(得分:0)
在所有转义符号前使用\
。