草庐IT

shell-namespace-extension

全部标签

xml - 将 XML 标记存储到 shell 中的 Perl 变量

我正在运行awk命令以从文件中提取XML标记,它在我的控制台中成功运行并打印输出所需的标记awk'//,//'file现在我需要在Perl脚本中调用此命令并将控制台中的输出传递给此变量,以便使用Perl操作此结构。我试过了my$var=`awk'//,//'file`但这不起作用,我有这个错误awk:cmd.line:1://,//awk:cmd.line:1:^unexpectednewlineorendofstring我如何修改这个变量赋值,甚至使用其他方法来解决我的问题。我对所有提议都持开放态度,即使一开始不使用awk并且只使用Perl。 最佳答案

xml - 用于解析 xml 的 shell 命令运行不正常

我要解析下面的xml14TznTtApp所以我正在使用下面的shell脚本echo-e'cat//*[local-name()="apptype"]/text()'|xmllint--shell/data/2211334455/894949890051_1.0.4/config.xml|grep-v"^/>"但是我得到的输出是-------14预期的输出是14谁能告诉我我做错了什么? 最佳答案 看起来这只是您使用--shell选项时输出的一部分。一种替代方法是只使用--xpath:$xmllint--xpath'//*[local-

xml - Shell 脚本,如何使用 sed 替换 xml 文件中的单个字符串实例

我有一个看起来像这样的xml文件MonitorthatTMSERVERstaysuptrue.*bin/tmSrv-serverMode=tmcd/ctec/apps/fotms/6.2/scripts/;./tradeFlow.shfitdevstarttm>&LOGLOC;/fotms/logs/starttm.logpkill-u&USER;-f'bin/tmSrv-serverMode=tm'1&USER;&EMAIL_SUPPORT;&TRAM_SCHEDULE;大约有40多个进程,所有进程都具有完全相同的布局。我能够在一个while循环中通读文件,使用它的Process标签

xml - 使用 sed 删除 namespace 前缀

我要转换这段xml:ApplesBananas通过删除namespace前缀(即v1)进入以下内容,并使用sed获取以下内容:ApplesBananas这可能吗?编辑:我还想声明xml保存在一个文件中。 最佳答案 下面是如何使用来自W3CHTML-XML-utils的hxpipe和hxunpipe来实现的(packagedformanydistributions):$hxpipeinfile|sed's/^\([()]\)v1:/\1/g'|hxunpipeApplesBananashxpipe解析XML/HTML并将其转换为awk

xml - 在 xslt 中更改 namespace uri

我正在尝试转换由EnterpriseArchitect生成的xmi文件,以便它被eclipse工具接受。我需要更改的其中一件事是前缀uml:的namespaceuri从“http://www.omg.org/spec/UML/20090901”到“http://www.eclipse.org/uml2/2.0.0/UML”输入:预期输出:我尝试过的:但这从节点中删除了uml:前缀并为其添加了默认namespace。绝对清楚,我只需要字符串xmlns:uml="http://www.omg.org/spec/UML/20090901"被替换为xmlns:uml="http://www.e

xml - 如何使用 shell 脚本提取 xml 属性?

我已经使用grep从源文档中提取了标签,但是现在我似乎无法弄清楚如何轻松地从字符串中提取属性。此外,我想避免使用标准安装中通常不会出现的任何程序。$tag=''我需要以下列变量结束$src="http://imgs.xkcd.com/comics/barrel_cropped_(1).jpg"$title="Don'tweall."$alt="Barrel-Part1" 最佳答案 您可以使用xmlstarlet.然后,您甚至不必自己提取元素:$echo$tag|xmlstarletsel-t--value-of'//img/@src

c# - 从 XmlWriter.WriteStartElement 中排除 namespace 的问题

我有个小问题,也许你能帮我解决。我尝试使用XmlWriter编写如下所示的XML标记(w3cfeedrecommendation):问题是我无法使用WriteStartElement-我想要的方法(原子作为前缀,链接作为元素名称),因为这给了我一个“ArgumentException:不能使用带有空命名空间的前缀”。我的代码如下所示:publicvoidWriteTo(XmlWriterwriter,Feedfeed){//RSSelementwriter.WriteStartElement("rss","");writer.WriteAttributeString("version"

c# - 在 C# 中调用 namespace-uri,namespace-uri 有一个无效的标记

我正在执行以下操作。给定一个XDocument文档;doc.XPathEvaluate("//namespace-uri()");我收到错误“//namespace-uri()”具有无效token。它似乎在节点测试中有效,例如“//*[namespace-uri()='xyz']”。不过这个函数应该可以工作,XMLSPY对上面的版本很满意,我相信它使用相同的引擎。如有任何帮助,我们将不胜感激。我想使用xpath枚举文档中的所有命名空间。谢谢问候克雷格。 最佳答案 您的XPath错误。namespace-uri()函数返回一个字符串,

xml - 从 namespace 前缀节点中删除 xmlns 属性

我正在尝试使用XSLT创建EdgeSideIncludeshtmlblock。这是一个示例XSLTsometextgoeshere虽然转换本身有效,但输出是这样的:sometextgoeshere问题是,xmlns:esi属性可怕地破坏了ESI的执行。如果我手动删除该属性(例如:打开HTML并将其删除,再次保存代码块)一切正常。问题:如何从HTML输出中删除xmlns:esi?我尝试将其包含在exclude-results-prefixes中,但没有成功。将起作用的示例输出:sometextgoeshere 最佳答案 Questio

c# - 将 XElement 合并到 XDocument 中并解析 namespace

鉴于以下XDocument,初始化为变量xDoc:我有一个嵌入在XML文件中的模板(我们称之为body.xml):我想把它作为的child.问题是如果通过XElement.Parse(body.xml)添加它,它保留了namespace,即使我认为应该删除namespace(没有必要复制自身-已经在父级上声明)。如果我不指定命名空间,它会改为放置一个空的命名空间,因此它变为.有没有办法正确合并XElement进入XDocument?我想在xDoc.Root.Element("ReportSection").AddFirst(XElement)之后得到以下输出: