多字符串分割用单引号,不要用“[]”,但多个直接仍然用竖号分隔,需要转义的也仍然用斜杠“\”,但注意需要两个斜杠“\”,因为斜杠本身也需要转义。
示例:两个多字符串分割符,分别为“[CDATA[[”和“]]”。
# echo '<xml><appid><![CDATA[20230214114000]]></appid>\n<errcode><![CDATA[3002981]]></errcode>\n<errmsg><![CDATA[系统错误]]></errmsg>\n</xml>'|awk -F'\\[CDATA\\[|\\]\\]' '{printf("%s|%s\n",$4,$6);}'
3002981|系统错误
更多请参见:Linux后台开发工具箱-葵花宝典 。
使用awk进行多字符串分割与转义处理,

文章介绍了在Linux环境下,如何使用awk命令对包含CDATA的字符串进行分割,强调了使用单引号代替方括号作为分隔符,并且详细解释了转义字符的使用规则,特别是对于斜杠的双转义。示例代码展示了如何提取CDATA中的特定内容。
2706

被折叠的 条评论
为什么被折叠?



