我希望将数据从xml标记获取到脚本文件,但数据是十六进制字符行( & > )需要转换为表单(&>)。
&
>
例子:
<project> <code><shell> if a && b </shell></code> </project>
我可以使用命令提取标签
xmlstarlet edit --update 'project/code/shell' --value "$DATA" shell.xml > shell.sh
cat外壳。上海
实际值:
if a && b
预期:
if a && b
如何达到预期的效果?
要取消显示特殊XML字符,请执行以下操作:
echo ' if a && b ' | xmlstarlet unescape
输出:
cat file.xml | xmlstarlet unescape
<project> <code><shell> if a && b </shell></code> </project>