【问题标题】:Manage XML strings with sed使用 sed 管理 XML 字符串
【发布时间】:2016-06-24 07:30:08
【问题描述】:

您好,我正在尝试使用 sed 在 XML 文件中进行一些替换,但我认为我遗漏了一些东西......

我要替换的字符串类型如下:

<Field name="ColName" type="java.lang.String"><![CDATA[EXTRACT_DATE]]></Field>

我将它存储在一个变量中

F_LEFTSTR="<Field name=\"ColName\" type=\"java\.lang\.String\"><!\[CDATA\["
F_RIGHTSTR="\]\]><\/Field>"
F_RIGHTSTR="<\/Field>"
F_STRTOFIND="$F_LEFTSTR$FLD$F_RIGHTSTR"

我尝试使用反斜杠来管理特殊字符 \

sed -i "s/$F_STRTOFIND/REPLACEMENT/" XML.xml

【问题讨论】:

  • 使用 XML 感知工具修改 XML。
  • 是动态变化,从另一个文件中读取数据,有工具可以做到吗?
  • 有很多。我知道(并维护)xsh,但还有其他几个工具。

标签: xml shell sed


【解决方案1】:

bash 命令中的单引号可防止 shell 变量的插值。您必须使用双引号并转义嵌入的双引号。

【讨论】:

    猜你喜欢
    • 2018-12-25
    • 2017-05-28
    • 2021-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-15
    • 2012-04-09
    • 2017-01-31
    相关资源
    最近更新 更多