我需要删除这样的字符串:
<test-test1 type:name="text.here"/>
来自.xml
文件。
我尝试过,例如:
variable="<test-test1 type:name=\"text.here\"/>"
sed -i 's|${variable}||g' file.xml
但是它不起作用。
我该怎么做?
谢谢
答案 0 :(得分:0)
我创建了一个Python脚本来为您执行此操作。
将内容复制到filename.py
,应用sudo chmod +x filename.py
并执行脚本。我假设您使用file1.xml
作为XML文件。
#!/usr/bin/python
import re
your_content: "the words to replace the string"
# here we read the file in Python
fh = open("file1.xml", "r")
content = fh.read()
# Here we match the string, it matches content between =name=" and \
m = re.sub(r'(?<=name=\")(.*)(?=\")', your_content, content)
print(m)
# now you probably want to write to the file
x = open("file1.xml", "w")
x.write(m)
注意,Python 3也可以。
答案 1 :(得分:0)
使用double-quotes for variables, not single-quotes:
variable="<test-test1 type:name=\"text.here\"/>"
sed -i 's|'"${variable}"'||g' file.xml