我有以下文件log.xml:
<entry> <message>Line 1 Line 2 and so on</message> </entry>
在CentOS 5.4上使用xmlstarlet 1.0.1,如果我运行以下命令,同时删除消息中的换行符:
xml sel -t -m //entry -v "translate(message,'
','@')" log.xml
结果是:
Line 1@ Line 2 and so on
在CentOS 6上使用xmlstarlet:
1.3.1 compiled against libxml2 2.7.6,linked with 20706 compiled against libxslt 1.1.26,linked with 10126
我会收到:
Line 1 Line 2 nd so on
注意“和”转换为空.我想这不是xmlstarlet的问题,而是libxslt的一些变化.
任何想法如何解决它?
UPDATE
添加字母“a”转换为空的问题.